我正在关注这些sass-loader instructions信函,但是webpack不会将我的.scss
文件捆绑到css
文件中。
我想我需要导入.scss
文件 - 这在文档中没有提到过! - 所以我把它添加到index.js
:
import styles from '../scss/style.scss'
可悲的是,这没有任何效果。另外,我真的不明白你为什么要将css导入javascript?你最后得到一个未使用的变量......
Webpack配置
const path = require('path');
module.exports = {
entry: './src/js/app.js',
output: {
filename: 'js/bundle.js',
path: path.resolve(__dirname, 'dist')
},
module: {
rules: [
{
test: /\.scss$/,
use: [{
loader: "style-loader"
}, {
loader: "css-loader"
}, {
loader: "sass-loader"
}]
}]
}
};
为什么webpack会忽略我的scss文件?
答案 0 :(得分:1)
Webpack默认会忽略未使用的varible以提高性能。相反,请尝试import '../scss/styles.scss'
加载您的scss文件。
答案 1 :(得分:1)
我认为您误解了您正在使用的装载机实际上做了什么:
scss-loader
将SCSS编译为CSS。css-loader
将CSS输出为字符串。style-loader
在运行时将CSS注入页面的头部。它不会在最终输出中创建任何文件!如果你想将CSS放在一个单独的文件中(这在生产中是一个好主意,为了避免出现无格式内容),你需要使用extract-text-webpack-plugin
。