区别:Webpack css-loader 和 raw-loader
Difference: Webpack css-loader and raw-loader
所以根据,css-loader
加载文件为字符串,根据require
解析webpack依赖,style-loader
在页面中插入样式标签,在很多在某些情况下,css-loader
可以替换为 raw-loader
。
我目前正在使用:
loader: ExtractTextPlugin.extract("raw-loader!postcss-loader!sass-loader?sourceMap&" + sassIncludePaths.join(""))
并且 .scss
文件中有 require
,但我还没有发现 raw-loader
有问题。所以问题是:
- 两者到底有什么区别?
- 如果我将
css-loader
替换为 raw-loader
以减少 运行 时间,可能会有什么问题?
根据我自己的理解:
raw-loader
和css-loader
的主要区别在于前者按原样加载文件,而后者通过webpack排序require
。因此,css-loader
的通常用例是将它与 style-loader
结合使用,后者会在页面中插入一个标记,以便它仅包含该页面上使用的样式。
然而,在我们的例子中,我们 extractTextPlugin
将它们合并到一个文件中,所以我们可以只使用 raw-loader 代替,这样可以节省几乎一半的时间。
还有 sass-loader
resolves @import
s too,这是我们使用的唯一依赖项,因此设置应该会更好。
所以根据css-loader
加载文件为字符串,根据require
解析webpack依赖,style-loader
在页面中插入样式标签,在很多在某些情况下,css-loader
可以替换为 raw-loader
。
我目前正在使用:
loader: ExtractTextPlugin.extract("raw-loader!postcss-loader!sass-loader?sourceMap&" + sassIncludePaths.join(""))
并且 .scss
文件中有 require
,但我还没有发现 raw-loader
有问题。所以问题是:
- 两者到底有什么区别?
- 如果我将
css-loader
替换为raw-loader
以减少 运行 时间,可能会有什么问题?
根据我自己的理解:
raw-loader
和css-loader
的主要区别在于前者按原样加载文件,而后者通过webpack排序require
。因此,css-loader
的通常用例是将它与 style-loader
结合使用,后者会在页面中插入一个标记,以便它仅包含该页面上使用的样式。
然而,在我们的例子中,我们 extractTextPlugin
将它们合并到一个文件中,所以我们可以只使用 raw-loader 代替,这样可以节省几乎一半的时间。
还有 sass-loader
resolves @import
s too,这是我们使用的唯一依赖项,因此设置应该会更好。