我刚刚开始与webpack和我有困难得到多入口点样本构建。示例中的webpack.config.js文件包含以下行

 var CommonsChunkPlugin = require("../../lib/optimize/CommonsChunkPlugin");

这个错误对我来说是无效的

Error: Cannot find module '../../lib/optimize/CommonsChunkPlugin'

在搜索中,我找到了其他使用CommonsChunkPlugin和表达式的示例

var commonsPlugin = new webpack.optimize.CommonsChunkPlugin("common.js");

哪个错误会失败

ReferenceError: webpack is not defined

更多的搜索发现了一些例子,包括

var webpack = require('webpack');

我的构建现在失败了

Error: Cannot find module 'webpack'

我不知道该怎么做。


当前回答

你可以试试这个。

npm install --only=dev

这对我很管用。

其他回答

rm -rf node_modules
rm -rf package.json-lock
npm install --force or npm install --legacy-peer-deps

你可以试试这个。

npm install --only=dev

这对我很管用。

Laravel用户

如果以上选项都不适合您,那么您可能需要正确安装laravell -mix。以下是如何做到的:

NPM安装laravell -mix—save-dev

现在使用下面的命令创建一个webpack.mix.js文件:

触摸webpack.mix.js

将以下代码添加到webpack.mix.js文件中:

mix.js('resources/js/app.js', 'public/js').postCss('resources/css/app.css', 'public/css', [
    require('postcss-import'),
    require('tailwindcss'),
    require('autoprefixer'),
]);

你可能还需要使用touch tailwind.config.js命令创建一个tailwind.config.js文件,然后添加以下代码:


module.exports = {
    content: [
        './vendor/laravel/framework/src/Illuminate/Pagination/resources/views/*.blade.php',
        './storage/framework/views/*.php',
        './resources/views/**/*.blade.php',
    ],

    theme: {
        extend: {
            fontFamily: {
                sans: ['Nunito', ...defaultTheme.fontFamily.sans],
            },
        },
    },

    plugins: [require('@tailwindcss/forms')],
};

最后运行npm run dev

所以有相当少的可能的问题,在我的情况下,在windows:

我将我的项目移动到名称中带有&的文件夹,这对windows来说很好,但它破坏了npm。我的解决方案是从名称中删除&。

测试&mock -> test_and_mock

NPM链接webpack 为我工作。

我的webpack配置: :“webpack ^ 4.41.2”, :“webpack-dev-server ^ 3.9.0”, :“webpack-cli ^ 3.3.10”