MacBook M1taro

在MacBook M1上运行taro项目yarn dev:h5的时候会报下面的错误:

## There is an issue with `node-fibers` ##
`/node_modules/fibers/bin/darwin-arm64-88/fibers.node` is missing.

Try running this to fix the issue: .nvm/versions/node/v15.5.0/bin/node /node_modules/fibers/build
Error: Cannot find module 'node_modules/fibers/bin/darwin-arm64-88/fibers'

找了很久没找到解决方案,知道找个一个类似的问题:https://www.jianshu.com/p/145015d721a5

解决办法

我的环境如下: node: v15.14.0 taro-cli: v3.2.8

先看错误提示:

## There is an issue with `node-fibers` ##
`/node_modules/fibers/bin/darwin-arm64-88/fibers.node` is missing.

Try running this to fix the issue: .nvm/versions/node/v15.14.0/bin/node /node_modules/fibers/build
Error: Cannot find module 'node_modules/fibers/bin/darwin-arm64-88/fibers'

执行/Users/xxx/.nvm/versions/node/v15.14.0/bin/node /Users/xxx/xxx/node_modules/fibers/build时找不到fibers的darwin-arm64-88

  1. 在项目目录下执行find . -name fibers.node,看看输出路径有没有darwin-arm64-88,如果没有,继续下面步骤2
  2. 在项目目录手动执行/Users/xxx/.nvm/versions/node/v15.14.0/bin/node /Users/xxx/xxx/node_modules/fibers/build,输出提示node-gyp not found! Please ensure node-gyp is in your PATH--
  3. 执行npm install -g node-gyp安装node-gyp
  4. 再次执行/Users/xxx/.nvm/versions/node/v15.14.0/bin/node /Users/xxx/xxx/node_modules/fibers/build,此时报错binding.gyp not found
  5. 项目目录下执行find . -name binding.gyp,会发现node_modules/fibers/binding.gyp,项目中是存在这个文件的
  6. 项目录下下cd node_modules/fibers,然后再次执行/Users/xxx/.nvm/versions/node/v15.14.0/bin/node /Users/xxx/xxx/node_modules/fibers/build,不出意外的话此时应该编译通过了。
  7. 然后cd ../..,执行yarn dev:h5,成功启动。