我想设置一个monorepo。我将我的 React 本机项目npx react-native init myProject
作为第一个项目进行初始化。(后面会有更多项目添加)
文件夹结构
- 家长
- 我的项目
- package.json(由 react-native 创建)
- 纱线锁
- package.json(我设置工作区的地方)
- 我的项目
然后我从 myProject 的父文件夹设置 yarn 工作区。
{ "name": "Parent",
"private": true,
"workspaces": {
"packages": [
"*"
],
"nohoist": [
"**/react-native",
"**/react-native-*",
"**/@react-native-*",
"**/@react-native-*/**",
"**/@react-navigation",
"**/@react-navigation/**",
"**/hermes-engine",
"**/rn-*"
] }
}
一切似乎都有效,直到我推送到 git 并克隆回来。我使用yarn install
但在启动项目时出现此错误(运行 android 或运行 ios)
Error: Unable to resolve module `scheduler` from `node_modules\react-native\Libraries\Renderer\implementations\ReactNativeRenderer-dev.js`: scheduler could not be found within the project or in these directories:
..\node_modules
我可以解决的唯一方法是 cd myProject 并运行npm install
(它会添加一些包并且应用程序将工作)而 cd 和 usingyarn install
不会做任何事情
我只想在项目中使用纱线,那么我该怎么做才能解决这个问题?