Iva*_*Ash 7 javascript css frontend sass webpack
我想使用一个条目 - materialize.scss(它导入许多其他scss文件)并将其编译成一个单独的输出materialize.min.css文件.
我如何使用Webpack做到这一点?
我试过一百万个不同的设置与extract-text-webpack-plugin一起css,style,sass装载机,node-sass,resolve-url-loader但我会得到不同的错误,并固定一个只是导致了另一个所以...我迷路了!
小智 1
$ npm install css-loader node-sass sass-loader style-loader extract-text-webpack-plugin --save-dev
这是我的演示webpack.config.js,根据您的项目结构更改路径:
const ExtractTextPlugin = require('extract-text-webpack-plugin');
const path = require('path');
const srcPath = path.join(__dirname, 'src');
const dstPath = path.join(__dirname, 'dst');
const sassLoaders = [
'css-loader?minimize',
'sass-loader?indentedSyntax=sass&includePaths[]=' + srcPath
];
module.exports = {
entry: {
client: './src/js/client'
},
module: {
loaders: [
/*README:https://github.com/babel/babel-loader*/
{
test: /\.(js|jsx)$/,
exclude: /(node_modules|bower_components)/,
loader: 'babel',
query: {
presets: ['react', 'es2015'],
cacheDirectory: true
},
plugins: ['transform-runtime']
},
{
test: /\.scss$/,
loader: ExtractTextPlugin.extract('style-loader', sassLoaders.join('!'))
},
{
test: /\.(png|jpg|bmp)$/,
loader: 'url-loader?limit=8192'
}
]
},
output: {
path: dstPath,
filename: '[name].js'
},
plugins: [
new ExtractTextPlugin('[name].min.css')
]
};
Run Code Online (Sandbox Code Playgroud)
以及GitHub 上的演示项目。
| 归档时间: |
|
| 查看次数: |
4781 次 |
| 最近记录: |