【问题标题】:There is no webpack.mix.js in my node_modules我的 node_modules 中没有 webpack.mix.js
【发布时间】:2021-05-08 04:23:44
【问题描述】:

通过终端安装 laravel mix 并运行命令 cp node_modules/laravel-mix/setup/webpack.mix.js ./ 我收到此错误。

cp : Cannot find path 'C:\Users\COBNETCKNN\Local Sites\portofolio\app\p
ublic\wp-content\themes\wp-portofolio\node_modules\laravel-mix\setup\we 
At line:1 char:1
+ cp node_modules/laravel-mix/setup/webpack.mix.js ./
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (C:\Users\COBNET...\webp  
   ack.mix.js:String) [Copy-Item], ItemNotFoundException
    + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Comman  
   ds.CopyItemCommand

我还查看了node_modules/laravel-mix/setup/ 里面没有webpack.mix.js 所以我无法从那里拉出来,是目录改变了还是发生了什么?我可以从我以前的项目中复制webpack.mix.js 并根据我的需要进行修改吗?

【问题讨论】:

    标签: npm webpack node-modules laravel-mix


    【解决方案1】:

    对于非 Laravel 独立项目,您应该执行以下操作。

    mkdir my-app && cd my-app
    npm init -y
    npm install laravel-mix --save-dev
    

    在项目的根目录中创建一个 Mix 配置文件。

    touch webpack.mix.js
    

    打开 webpack.mix.js 并添加以下代码:

    // webpack.mix.js
    
    let mix = require('laravel-mix');
    
    mix.js('src/app.js', 'dist').setPublicPath('dist');
    

    使用npx mixnpm run dev 编译。

    你的 webpack.mix.js 不应该在 /node-modules 中,它需要在你的项目实例的根目录中。

    使用最新版本的 Laravel Mix,您的 package.json 应该看起来更像以下内容。

    {
        "private": true,
        "scripts": {
            "dev": "npm run development",
            "development": "mix",
            "watch": "mix watch",
            "watch-poll": "mix watch -- --watch-options-poll=1000",
            "hot": "mix watch --hot",
            "prod": "npm run production",
            "production": "mix --production"
        },
        "devDependencies": {
            "@fortawesome/fontawesome-free": "^5.15.2",
            "autoprefixer": "^10.2.4",
            "browser-sync": "^2.26.14",
            "browser-sync-webpack-plugin": "^2.3.0",
            "cross-env": "^7.0.3",
            "laravel-mix": "^6.0.11",
            "postcss": "^8.2.4",
            "sass": "^1.32.6",
            "sass-loader": "^10.1.1",
            "tailwindcss": "^2.0.2",
            "vue-template-compiler": "^2.6.12"
        }
    }
    

    【讨论】:

    【解决方案2】:

    设法通过降低 Laravel Mix 的版本来解决它,看起来在最新版本中,安装 laravel mix 后你的 node_modules 中没有 webpack.mix.js,这是团队应该解决的问题。 . 所以解决方案是在你的 package.json 文件中复制下面的这些依赖项

    "devDependencies": {
        "autoprefixer": "^9.8.6",
        "browser-sync": "^2.26.13",
        "browser-sync-webpack-plugin": "^2.0.1",
        "cross-env": "^7.0.3",
        "laravel-mix": "^5.0.9",
        "postcss": "^7.0.35",
        "sass": "^1.30.0",
        "sass-loader": "^8.0.2",
        "tailwindcss": "npm:@tailwindcss/postcss7-compat@^2.0.1",
        "vue-template-compiler": "^2.6.12"
      },
      "dependencies": {
        "@fortawesome/fontawesome-free": "^5.15.1"
      }
    

    这是来自我的旧项目 package.json 文件,设置完成后,您只需通过 npm install laravel-mix --save-dev 再次安装 laravel mix,然后运行 ​​cp node_modules/laravel-mix/setup/webpack.mix.js ./,这将从您的 node_modules 中提取 webpack.mix.js

    【讨论】:

    • webpack.mix.js 不应该在 /node-modules 中。您需要在项目根目录中创建它。
    猜你喜欢
    • 2022-08-02
    • 1970-01-01
    • 1970-01-01
    • 2022-01-08
    • 2019-09-24
    • 1970-01-01
    • 2017-04-15
    • 1970-01-01
    • 2017-07-23
    相关资源
    最近更新 更多