1. Taro
脚手架使用
# 使用 npm 全局安装 CLI 工具
$ npm install -g @tarojs/cli
# 脚手架创建模板项目
taro init
2. 直接执行 taro init
可能会报错,需要执行 sudo taro init
node:internal/process/promises:289
triggerUncaughtException(err, true /* fromPromise */);
^
[Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/@tarojs/cli/templates/taro-temp'] {
errno: -13,
code: 'EACCES',
syscall: 'mkdir',
path: '/usr/local/lib/node_modules/@tarojs/cli/templates/taro-temp'
}
3. 给文件夹添加 chmod 777
权限(不推荐)
但执行完毕后所得的项目可能只拥有读权限,没有写权限。
因此可能会想到执行 sudo chmod -R 777 .
,将当前项目及其子文件夹变为可读写,但可能会提示 Operation not permitted
4. 最终解决办法 => 修改项目所属 用户及用户组
我们不应该直接更改文件的读写权限,而应该更改项目及其所有子文件的所属用户及组,执行以下命令:
# 修改项目所属用户及用户组
sudo chown -R username:staff .
再次 ls -l
查看项目,所属用户组变为username
和 staff
, webstorm打开项目,文件均可读写,问题解决 ~
5. 小结
sudo 使用超级用户(root)权限执行命令
chown 更改文件或目录的所有者(change owner)
-R 递归(recursive),将更改应用于当前目录及其所有子目录和文件
username 是目标文件或目录的新所有者
staff 是目标文件或目录的新用户组
. 当前目录