Webpack 禁用url()签入css加载程序
我有一个React项目,里面有传单1.0.3。在使用css加载器构建Webpack时,我得到: ERROR in ./~/css-loader!./~/leaflet/dist/leaflet.css Module not found: Error: Can't resolve './images/layers.png' in '/home/tim/work/portal/node_modules/leaflet/dist' resolve './images/layers.png' in '/home/tim/work/portal/node_modules/leaflet/dist' using description file: /home/tim/work/portal/node_modules/leaflet/package.json (relative path: ./dist) Field 'browser' doesn't contain a valid alias configuration after using description file: /home/tim/work/portal/node_modules/leaflet/package.json (relative path: ./dist) using description file: /home/tim/work/portal/node_modules/leaflet/package.json (relative path: ./dist/images/layers.png) as directory /home/tim/work/portal/node_modules/leaflet/dist/images/layers.png doesn't exist no extension Field 'browser' doesn't contain a valid alias configuration /home/tim/work/portal/node_modules/leaflet/dist/images/layers.png doesn't exist .js Field 'browser' doesn't contain a valid alias configuration /home/tim/work/portal/node_modules/leaflet/dist/images/layers.png.js doesn't exist ./~/css加载程序!中出错/~/传单/目录/传单.css 未找到模块:错误:无法解析“/home/tim/work/portal/node_modules/传单/dist”中的“./images/layers.png” 解析“/home/tim/work/portal/node_modules/传单/dist”中的“./images/layers.png” 使用说明文件:/home/tim/work/portal/node_modules/传单/package.json(相对路径:./dist) 字段“browser”不包含有效的别名配置 使用说明文件后:/home/tim/work/portal/node_modules/传单/package.json(相对路径:./dist) 使用说明文件:/home/tim/work/portal/node_modules/传单/package.json(相对路径:./dist/images/layers.png) 作为目录 /home/tim/work/portal/node_modules/传单/dist/images/layers.png不存在 没有分机 字段“browser”不包含有效的别名配置 /home/tim/work/portal/node_modules/传单/dist/images/layers.png不存在 .js 字段“browser”不包含有效的别名配置 /home/tim/work/portal/node_modules/传单/dist/images/layers.png.js不存在 这似乎是因为在传单.css中使用了相对图像路径。我已尝试通过以下方式关闭css加载程序检查: { test: /\.css$/, exclude: [/node_modules/, /sanitize/], use: [ 'style-loader', { loader: 'css-loader', options: { url: false, // leaflet uses relative paths minimize: false, modules: false, } } ] }, { 测试:/\.css$/,, 排除:[/node_modules/,/sanitize/], 使用:[ “样式加载器”, { 加载器:“css加载器”, 选项:{ url:false,//传单使用相对路径 错,, 模块:错误, } } ] },Webpack 禁用url()签入css加载程序,webpack,leaflet,css-loader,Webpack,Leaflet,Css Loader,我有一个React项目,里面有传单1.0.3。在使用css加载器构建Webpack时,我得到: ERROR in ./~/css-loader!./~/leaflet/dist/leaflet.css Module not found: Error: Can't resolve './images/layers.png' in '/home/tim/work/portal/node_modules/leaflet/dist' resolve './images/layers.png' in '/
但是文档化的选项显然不起作用。查看
节点单元模块
更详细的信息,leaflet@1.0.3
不将图像目录或图像放入节点\u模块/传单/dist/
。从repo的克隆中复制图像可以解决此问题。我还可以至少在windows下验证这一点
纱线添加传单
未在节点_模块-缺少图像文件夹中正确安装传单依赖项。然而,如果你坚持NPM,你应该会没事的
npm安装--保存传单
我遇到了完全相同的问题,并通过从项目中的.yarnclean文件中删除“images”行来修复它 如果项目中存在.yarnclean,则Thread将清理节点_模块并删除与任何模式匹配的所有文件。因此,node_modules/leaftlet/dist/中的images dir也被删除
另请参见Github存储库中的内容。您有两种解决方案:
CSS
文件,这些文件在Webpack
文件中包含url()
,这不是一个很好的解决方案Webpack
config中使用url加载器
,并将configurl加载器
作为静态,所有加载器都会忽略url地址