运行webpack报错_ValidationError2.default(ajv.errors, name)

发布于 2022-09-06 23:39:00 字数 2092 浏览 43 评论 0

使用插件extract-text-webpack-plugin:
运行webpack后包这个错:
/Users/apple/work/self_test/webpack/node_modules/schema-utils/dist/validateOptions.js:40

throw new _ValidationError2.default(ajv.errors, name);
^

false

webpack.config,js

//1.引入 webpack模块
const webpack = require('webpack');
const path = require('path');
// 抽离css样式---将文件单独打包
const ExtractTextPlugin = require('extract-text-webpack-plugin')

//2.使用webpack 内置的插件, 提取公共代码
const commonsPlugin = new webpack.optimize.CommonsChunkPlugin('common.js');

const extractCssPlugin = new ExtractTextPlugin({
    filename:path.resolve(__dirname, 'dist/css/[name].css'),
    disabled:process.env.NODE_ENV === "deverlopment"
})
 //模块化
module.exports = {
    //3.插件项---要使用的插件放这里,如压缩代码
    plugins: [
        commonsPlugin, 
        extractCssPlugin
    ],

    //4.页面入口文件配置---设置入口文件
    entry: {
        test1 : './js/page1/ab_entry.js',
        test2 : './js/page2/ey_entry.js',
    },

    //5.入口文件输出配置
    output: {
        path: path.resolve(__dirname, 'dist/js'),
        filename: '[name].js'
    }
,
    //6.加载器配置----它告知 webpack 每一种文件都需要使用什么加载器来处理
    module: {
        //加载器配置,需要的加载去通过npm install XXX下载的node_module中
        rules: [
                { test: /\.css$/, 
                use:ExtractTextPlugin.extract({
                            // use style-loader in deverlopment
                            fallback: 'style-loader',
                            use:['css-loader','sass-loader','postcss-loader']
                            // use:[{loader:'css-loader'},{loader:'sass-loader'},{loader:'postcss-loader'}]
                }),
            }]
    },
    
    //7.其它
    resolve: {
        root: 'E:/github/flux-example/src', //绝对路径
        extensions: ['', '.js', '.json', '.scss'],//自动扩展文件后缀名,意味着我们require模块可以省略不写后缀名
        alias: {//模块别名定义,方便后续直接引用别名,无须多写长长的地址
            AppStore : 'js/stores/AppStores.js',//后续直接 require('AppStore') 即可
            ActionType : 'js/actions/ActionType.js',
            AppAction : 'js/actions/AppAction.js'
        }
    }
};

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(8

与风相奔跑 2022-09-13 23:39:00

clipboard.png
有可能你得图片路径错了,仅供参考,我遇到锅一模一样的问题

南风几经秋 2022-09-13 23:39:00

遇到相同问题 请问博主怎么解决的

⒈起吃苦の倖褔 2022-09-13 23:39:00

我遇到这个错,是因为uglifyjs-webpack-plugin这个插件的配置更新了传参方式uglifyoptions

鸠书 2022-09-13 23:39:00

怎么解决啊 哥们

2022-09-13 23:39:00

我试了下,extract-text-webpack-plugin版本用的2.1.2的就可以,3.x的就报上面那错

丑疤怪 2022-09-13 23:39:00

extensions: ['', '.js', '.json', '.scss'];
新版本的空字符是会报错;
改成extensions: ['*', '.js', '.json', '.scss'];

淡淡離愁欲言轉身 2022-09-13 23:39:00

参考:
https://stackoverflow.com/que...

 test: /\.scss/, include: SRC_DIR, loader:
          ExtractTextPlugin.extract({ loader: ['css-loader', 'sass-loader'] }) // loader is deprecated
      },

其中的 loader 替换成 use

  test: /\.scss/, include: SRC_DIR, loader:
          ExtractTextPlugin.extract({ use: ['css-loader', 'sass-loader'] }) // use is what I should use. hah
      },

原来的loader方式已经在webpack3中废弃了

只涨不跌 2022-09-13 23:39:00

我也遇到了同样的问题, 以上的所有方法都试过,还是报错。
原来把build目录下utils.js文件里的 publishPath:'../../', 注释掉就可以了

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文