Я много раз пытался найти решение, но серьезно не могу понять, что происходит.
$ npm -v
6.5.0
$ node -v
v10.10.0
My package.json
включает следующие зависимости:
{
"private": true,
"scripts": {
"dev": "NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
"production": "NODE_ENV=production node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
"tests": "phpunit --testdox"
},
"devDependencies": {
"laravel-mix": "^3.0.0",
"lodash": "^4.17.11",
"purifycss-webpack": "^0.7.0",
"tailwindcss": "^0.7.2",
"webpack": "^3.12.0"
},
"dependencies": {
"@bugsnag/js": "^5.1.0",
"@bugsnag/plugin-vue": "^5.1.0",
"axios": "^0.17.1",
"babel-preset-es2015": "^6.24.1",
"blueimp-md5": "^2.10.0",
"clientjs": "^0.1.11",
"css-loader": "^0.28.11",
"dotenv": "^6.2.0",
"glob-all": "^3.1.0",
"js-cookie": "^2.2.0",
"laravel-echo": "^1.4.1",
"libphonenumber-js": "^1.6.9",
"md5": "^2.2.1",
"moment": "^2.22.2",
"postcss-import": "^11.1.0",
"purgecss-webpack-plugin": "^1.4.0",
"purify-css": "^1.2.6",
"pusher-js": "^4.3.1",
"qs": "^6.6.0",
"vee-validate": "^2.1.3",
"vue": "^2.5.17",
"vue-i18n": "^8.3.2",
"vue-router": "^2.8.1",
"vue-wysiwyg": "^1.7.2",
"vuex": "^3.0.1"
}
}
Я могу сделать npm run dev
'x' раз без каких-либо проблем, когда внезапно, даже не выполнив другую команду npm, или не установив новые зависимости, или что-то еще, он может внезапно жаловаться на недостающие модули.
Module build failed: Error: Cannot find module 'es-to-primitive/es6'
Это всего лишь пример; это были и другие модули.
Мое решение этого в основном:
$ rm -f -R ./node_modules/*
$ npm install
$ npm run dev
Это всегда устраняет проблему. Я просто не понимаю почему. Зависимость должна была быть установлена ранее, потому что мои предыдущие сборки работали нормально. Я работаю на Macbook Pro и серьезно не знаю, что может быть причиной такого поведения.
При моем последнем запуске я проверил node_modules/es-to-primitive
, и файла es6.js не было, поэтому я понимаю ошибку, но после выполнения вышеуказанного исправления установил этот файл. Наверное, я просто не понимаю, как это может снова исчезнуть через некоторое время ...
Что-то я делаю не так или неправильно понимаю?
Спасибо!