Install & Compatibility
Where this runs
tested against v? · npm install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
muslnode 18–226 runs
build_error
glibcnode 18–226 runs
build_error
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
resolve-url-loader
✓ import resolveUrlLoader from 'resolve-url-loader'
✗ const resolveUrlLoader = require('resolve-url-loader')
CommonJS require works too (package supports both).
default import
✓ import resolveUrlLoader from 'resolve-url-loader'
✗ const { default: resolveUrlLoader } = require('resolve-url-loader')
Default import is the loader itself; named exports don't exist.
webpack config
✓ module.exports = { module: { rules: [{ test: /\.scss$/, use: ['style-loader','css-loader','resolve-url-loader','sass-loader'] }] } }
✗ module.exports = { module: { loaders: [{ test: /\.scss$/, loader: 'style-loader!css-loader!resolve-url-loader!sass-loader' }] } }
Use `use` array with full loader names; avoid legacy `loaders` syntax and exclamation marks.
Shows a typical webpack configuration using resolve-url-loader between sass-loader and css-loader with source maps enabled.
// webpack.config.js
const path = require('path');
module.exports = {
entry: './src/index.js',
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'bundle.js'
},
module: {
rules: [
{
test: /\.scss$/,
use: [
'style-loader',
'css-loader',
{
loader: 'resolve-url-loader',
options: {
sourceMap: true, // required for preceding loaders
engine: 'postcss', // default since v5
root: '' // optional, for absolute paths
}
},
{
loader: 'sass-loader',
options: {
sourceMap: true
}
}
]
}
]
},
devtool: 'source-map'
};
// src/index.scss
@import 'features/foo';
// src/features/_foo.scss
.foo { background: url(bar.png); }
// src/features/bar.png exists
// Without resolve-url-loader, css-loader would look for src/bar.png (wrong)
// With resolve-url-loader, url(bar.png) becomes url(features/bar.png) (correct)
Errors
Common errors & fixes
Module build failed (from ./node_modules/resolve-url-loader/index.js): Error: resolve-url-loader: Cannot resolve original source file
Source maps are missing or incorrect from preceding loaders (e.g., sass-loader without sourceMap: true).
fixEnable sourceMap: true on sass-loader and css-loader.
Error: resolve-url-loader: engine option is deprecated. Use postcss parser instead.
Using engine: 'rework' in version 4 or 5.
fixRemove the engine option (default is postcss in v5) or set engine: 'postcss'.
Module build failed (from ./node_modules/resolve-url-loader/index.js): Error: resolve-url-loader: Cannot find module 'rework'
Using engine: 'rework' in version 5 where rework dependency was removed.
fixRemove engine option or set to 'postcss'.
Error: resolve-url-loader: root option must be a string
Passing a non-string value (e.g., boolean or number) to root option.
fixSet root to a string (e.g., '' for empty) or remove the option.
Audit
Dependencies
postcssrequiredParsing CSS to find url() statements
source-maprequiredResolving original source positions from source maps