Tôi đang cố gắng làm theo một số hướng dẫn và tài liệu và có webpack xây dựng cho tôi sass tập tin vào tách các tập tin css.Webpack - cách cấu hình đường dẫn thư mục cơ sở cho trình nạp sass?
Nó tất cả các loại công trình, miễn là tôi đang chứng minh đầy đủ đường dẫn tương đối trong yêu cầu:
require("../sass/ss.scss")
Nhưng tôi muốn sử dụng:
require("./ss.scss")
và tôi bật nhận xét ra 'sassLoader' trong cấu hình, tôi gặp lỗi:
[1] "sassLoader" is not allowed
Như bạn có thể thấy tôi đã cố gắng để sử dụng cài đặt inline quá:
sourceMap&includePaths[]=' + (PATHS.sass)
nhưng họ phớt lờ.
Tôi đang làm gì sai?
const path = require('path');
const HtmlWebpackPlugin = require('html-webpack-plugin');
const validate = require('webpack-validator');
const merge = require('webpack-merge');
const ExtractTextPlugin = require('extract-text-webpack-plugin');
const PATHS = {
app: path.join(__dirname, 'app'),
js: path.join(__dirname, 'app', 'js'),
sass: path.join(__dirname, 'app', 'sass'),
build: path.join(__dirname, 'build')
};
const common = {
// Entry accepts a path or an object of entries.
// We'll be using the latter form given it's
// convenient with more complex configurations.
entry: {
app: path.join(PATHS.js, 'index.js')
},
output: {
path: PATHS.build,
filename: '[name].js'
},
plugins: [
new HtmlWebpackPlugin({
title: 'Webpack demo'
}),
new ExtractTextPlugin(
'[name].css', {
allChunks: true
}
),
],
devtool: "source-map",
module: {
loaders: [
{
test: /\.scss$/,
loader: ExtractTextPlugin.extract(
'style!css?sourceMap!sass?sourceMap&includePaths[]=' + (PATHS.sass)
)
}
]
}
// sassLoader: {
// includePaths: [PATHS.sass]
// }
};
var config;
// Detect how npm is run and branch based on that
switch(process.env.npm_lifecycle_event) {
case 'build':
config = merge(common,
{}
);
break;
default:
config = merge(common,
{}
);
}
module.exports = validate(config);
Đào hơn nữa trong: Vẫn không có ý tưởng tại sao 'sassLoader' không thể được sử dụng, nhưng bây giờ tôi chắc chắn rằng những thông số inline-truy vấn đạt được điều đó với sass-loader. Thing là: includePath chỉ tốt cho các câu lệnh @import trong-scss. – stach