为了账号安全,请及时绑定邮箱和手机立即绑定

webpack.config.js的代码,亲测能正常运行。——20170406

var htmlWebpackPlugin=require('html-webpack-plugin');
var webpack=require('webpack');
var path=require('path');
module.exports={
    context:__dirname,
    entry:'./src/app.js',
    output:{
        path:path.resolve(__dirname,'./dist'),
        filename:'js/[name].bundle.js'
    },
    module:{
      rules:[
          {
              test:/\.js$/,
              loader:'babel-loader',
              exclude:path.resolve(__dirname,'/node_modules/'),
              include:path.resolve(__dirname,'/src/'),
              query:{
                  presets:['latest']
              }
          },
          {
              test:/\.css$/,
              use:[
                  {
                      loader:'style-loader'
                  },
                  {
                      loader:'css-loader',
                      options:{
                          importLoaders:1
                      }
                  },
                  {
                      loader:'postcss-loader'
                  }
              ]
          }
      ]
    },
    plugins:[
        new htmlWebpackPlugin({
            filename:'index.html',
            template:'index.html',
            inject:'body'
        }),
        new webpack.LoaderOptionsPlugin({
            options:{
                postcss:function(){
                    return [
                        require('autoprefixer')({
                            broswers:['last 5 versions']
                        })
                    ]
                }
            }
        })
    ]
};


正在回答

6 回答

可以运行,试过了,谢谢

0 回复 有任何疑惑可以回复我~

在这样写才不会报错,plug不用谢就可以了。

{

    test:/\.css$/,

    //loader:'style-loader!css-loader!postcss-loader' //添加对样式表的处理

    use:[

    {

    loader:'style-loader'

    },

    {

    loader:'css-loader',

    options:{

    importLoaders:1

    }

    },

    {

    loader:'postcss-loader',

    options: {           // 如果没有options这个选项将会报错 No PostCSS Config found

                            plugins: (loader) => [

                                require('postcss-import')({root: loader.resourcePath}),

                                require('autoprefixer')(), //CSS浏览器兼容

                                require('cssnano')()  //压缩css

                            ]

                        }

    }

    ]

   },


0 回复 有任何疑惑可以回复我~
#1

韩鑫

亲测,此法无效
2017-06-29 回复 有任何疑惑可以回复我~
#2

慕仔3155523

感谢 能用了
2017-09-01 回复 有任何疑惑可以回复我~

改为这个就可以了,自己测试过的

{
        test: /\.css$/,
        use: ExtractTextPlugin.extract({
            use: [
                 {
                      loader: 'css-loader'
                 }, {
                    loader: 'postcss-loader',
                        options: {
                           plugins() {
                              return [
                                   require('autoprefixer')({
                                      browsers: [
                                           '>1%',
                                            'last 2 versions',
                                             'Firefox ESR',
                                             'not ie < 9'
                                       ]
                               })
                           ]
                         }
                   }
                }
             ]
        })
},

1 回复 有任何疑惑可以回复我~
#1

Sccong

这个方法有效
2017-07-01 回复 有任何疑惑可以回复我~
#2

qq_安静先生_03717455

嗯 这个有效 同学们如果格式报错把plugins(){}改为plugins:function(){}
2017-11-12 回复 有任何疑惑可以回复我~

我也遇到这个坑,看了文档,除了楼主这种解决方式还有两种应该可以,一种是可以在同目录下增加一个postcss.config.js去设置组件,具体设置参考https://www.npmjs.com/package/postcss-loader

还有一种比较简单的可以直接在module设置,如下:

{
   test: /\.css$/,
   use:[
       'style-loader',
       'css-loader',
       {
           loader:"postcss-loader",
           options:{
               plugins:[
                   require('autoprefixer')({
                       browsers:['last 5 versions']
                   })
               ]
           }
       }
   ]
}

0 回复 有任何疑惑可以回复我~
#1

VIABO

不好意思,上面第二种方式还是不行,在没配置options:{importLoaders:1}前还可以正常运行,配置这个后始终报错,不得已最后还是新增了postcss.config.js文件,这样可以通过
2017-05-12 回复 有任何疑惑可以回复我~
#2

qq_唐大虾_03914583 回复 VIABO

我也新增了,还是不行
2017-05-15 回复 有任何疑惑可以回复我~
#3

土豆马铃薯呀

还需要配置postcss-import
2017-06-05 回复 有任何疑惑可以回复我~

为什么我还是编译报错?还需要postcss.config.js吗?

ERROR in ./~/css-loader?{"importLoaders":1}!./~/postcss-loader/lib!./src/css/common.css

Module build failed: Error: No PostCSS Config found in: /Users/LN/project/webpack-demo

    at Error (native)

    at /Users/LN/project/webpack-demo/node_modules/postcss-load-config/index.js:51:26

 @ ./src/css/common.css 4:14-135

 @ ./src/app.js


0 回复 有任何疑惑可以回复我~
#1

yangtongjie

我也是报的这个错,麻烦问下只好到解决的办法了吗
2017-05-10 回复 有任何疑惑可以回复我~
#2

Mr_Blue_001

我也是报的这个错,麻烦问下只好到解决的办法了吗
2017-06-09 回复 有任何疑惑可以回复我~

new webpack.LoaderOptionsPlugin是干什么用的,官网API里没看到

0 回复 有任何疑惑可以回复我~
#1

慕函数6472736

https://webpack.js.org/guides/migrating/#loaderoptionsplugin-context 官网在这里有提及这个接口
2017-04-25 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

webpack.config.js的代码,亲测能正常运行。——20170406

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信