npm不会使用Laravel / Homestead安装package.json文件中列出的软件包

时间:2018-06-08 01:34:03

标签: node.js laravel-5 npm-install homestead

我在Laravel Homestead上遇到“npm install”的问题,问题是npm没有安装package.json文件中列出的软件包,如laravel-mix ...等。

我在家园电脑上安装了最新版本的nodejs和npm。这是我的package.json:

{
    "private": true,
    "scripts": {
        "dev": "npm run development",
        "development": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
        "watch": "npm run development -- --watch",
        "watch-poll": "npm run watch -- --watch-poll",
        "hot": "cross-env NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js",
        "prod": "npm run production",
        "production": "cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --no-progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js"
    },
    "devDependencies": {
        "axios": "^0.18",
        "bootstrap": "^4.0.0",
        "popper.js": "^1.12",
        "cross-env": "^5.1",
        "jquery": "^3.2",
        "laravel-mix": "^2.0",
        "lodash": "^4.17.4",
        "vue": "^2.5.7"
    }
}

1 个答案:

答案 0 :(得分:0)

这不是你问题的直接答案,但我认为你应该在你的主机上运行npm install,而不是在流浪盒中。

运行package.json中定义的脚本的最终结果是js / css的编译,无论如何都会被浏览器使用 - 运行它们应该没有区别。

我对此感到困惑很长一段时间,终于意识到Laravel项目试图在Homestead中运行npm脚本是没有意义的。我在1月份发布了一个关于它here的问题,并且从那时起开始在主机上独占运行npm脚本。奇迹般地,几乎所有与npm相关的问题都消失了(这适用于Windows 10和Ubuntu 16.04主机)。

作为一个额外的好处,脚本应该从你的主机更快地执行,因为你跳过了不必要的'Vagrant层'。