1,npm太慢,用淘寶鏡像都不行:npm config set registry https://registry.npm.taobao.org
參考:http://blog.csdn.net/quuqu/article/details/64121812,http://www.runoob.com/nodejs/nodejs-npm.html
2,於是換成 yarn,進入官網 https://yarnpkg.com/zh-hans/docs/install 下載安裝
另外可以裝Windows下的包管理器Chocolatey:http://blog.csdn.net/u011054333/article/details/51484943
https://chocolatey.org/install#install-with-cmdexe
3,配置環境變量

XXX-PC MINGW64 ~ $ yarn --version 1.3.2
5,先cd到項目的文件夾下,如果yarn命令不可用,檢查一下環境變量是否配置正確。安裝過程中,我什么都不寫一直回車,全部用默認配置:
XXX-PC MINGW64 /web/yarn (master) $ yarn init yarn init v1.3.2 question name (yarn): question version (1.0.0): question description: question entry point (index.js): question repository url (XXX): question author (XXX): question license (MIT): question private (true): success Saved package.json Done in 46.36s.
6,先試試運行:
$ yarn install --no-bin-links error E:\server\web\robot\node_modules\node-sass: Command failed. $ yarn add cross-env(windows需要) $ npm rebuild node-sass --no-bin-links(后面出錯重裝了) $ npm run dev(報錯npm ERR) $ npm run watch-poll
如果主機是Windows的話,第1,2必須帶 --no-bin-links
7,npm ERR報錯,可以升級npm:
$ npm install npm -g
查看版本:
$ npm -v
5.5.1
8,把package.json里script的cross-env全部替換成:node node_modules/cross-env/dist/bin/cross-env.js
"scripts": { "dev": "npm run development", "development": "node node_modules/cross-env/dist/bin/cross-env.js NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js", "watch": "node node_modules/cross-env/dist/bin/cross-env.js NODE_ENV=development node_modules/webpack/bin/webpack.js --watch --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js", "watch-poll": "npm run watch -- --watch-poll", "hot": "node node_modules/cross-env/dist/bin/cross-env.js 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": "node node_modules/cross-env/dist/bin/cross-env.js NODE_ENV=production node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js" },
參考:http://pilishen.com/posts/reason-and-solution-why-npm-run-dev-cannot-find-cross-env-in-laravel5.4
9,$ npm run dev報錯:Module build failed: Error: %1 is not a valid Win32 application,那么重裝node-sass:
$ npm rm node-sass $ npm install node-sass
安裝報錯:Cannot download "https://github.com/sass/node-sass/releases/download/v4.6.1/win32-x64-48_binding.node" 直接去淘寶找到適合的文件:https://npm.taobao.org/mirrors/node-sass/v4.6.1/ 我的下載地址:https://npm.taobao.org/mirrors/node-sass/v4.6.1/win32-x64-48_binding.node 下載完保存到任意位置,我放在C:/npm。然后我們需要手動指定node-sass二進制文件的下載源為下載的那個文件:
$ npm config set sass-binary-path c:/npm/win32-x64-48_binding.node
$ npm install node-sass
$ npm run dev
參考:http://blog.csdn.net/bug_zero/article/details/65968959
10,npm run watch-poll
請保證在進行項目開發時 npm run watch-poll
一直運行着,避免出現前端文件更改后沒有應用到頁面上的歧義。
參考:https://www.cnblogs.com/xiaoCong2016/p/6577101.html