Mac OS使用npm构建新vue项目时大量报错

Mac OS使用npm构建新vue项目时大量报错

问题

首先我用的是 3.0以上的vue

sudo cnpm install -g @vue/cli

cnpm是淘宝团队做的国内镜像,因为npm的服务器位于国外可能会影响安装。
如果你没安装cnpm,可以使用以下指令安装

npm install cnpm -g --registry=https://registry.npm.taobao.org

# 测试是否安装成功
cnpm -v

当使用

sudo vue create test-demo 

构建新的vue项目时大量报错,内容类似下方

gyp ERR! configure error 
gyp ERR! stack Error: EACCES: permission denied, mkdir '/var/www/project_name/node_modules/node-sass/build'
gyp ERR! System Linux 4.4.0-1065-aws
gyp ERR! command "/usr/local/bin/node" "/var/www/project_name/node_modules/node-gyp/bin/node-gyp.js" "rebuild" "--verbose" "--libsass_ext=" "--libsass_cflags=" "--libsass_ldflags=" "-libsass_library="
gyp ERR! cwd /var/www/front-stormsensor/node_modules/node-sass
gyp ERR! node -v v8.11.4
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok 
Build failed with error code: 1

如何解决

网上清一色给的解决方案是

sudo npm i --unsafe-perm

这条语句我成功执行了,但还是不行,不过可以确定的是确实是权限的问题,因为mac不让npm写入。

因此,如果你要创建的vue工程的名字叫 hello-world,你可以先手动创建这个文件夹,然后右键选中它,点击显示简介,在最下方将这两个权限改成“读与写”。

20191109014249943.png

最后重新运行 sudo vue create hello-world ,选择 merge 。
你将会发现它不再报错了!