出于特殊原因,我想在两个文件夹web
(react应用程序)和mobile
之间共享package.json文件:
▸ mobile/
▸ node_modules/
▾ web/
▸ public/
▸ src/
README.md
package-lock.json
package.json
yarn.lock
在我的package.json文件中,我添加了以下内容:脚本下的"web-start": "react-scripts start",
。然而,当我在根文件夹(/Users/edmund/Documents/src/banana-client
)中运行它时,我得到了以下结果:
➜ banana-client git:(master) ✗ yarn web-start
yarn web-start v0.24.6
$ react-scripts start web
Could not find a required file.
Name: index.html
Searched in: /Users/edmund/Documents/src/banana-client/public
error Command failed with exit code 1.
有什么方法可以添加根目录吗?
4条答案
按热度按时间ars1skjm1#
对于这个特定的用例,我建议您继续使用Yarn工作空间。
使用Yarn工作区,您可以在单个存储库中拥有多个项目,其中项目共享根级别的主package.json文件,项目级别的package.json文件不单独共享和使用。
运行
yarn install
将在根级别安装所有依赖项,如果您不希望某些软件包安装在根级别,则可以配置该级别。您可以在根目录中拥有脚本,这些脚本可以帮助您在该工作区中运行内部项目。
因此,您的最终项目结构将看起来像这样:
了解有关Yarn工作区的更多信息:https://yarnpkg.com/lang/en/docs/workspaces/
看看这个例子,了解它的基本用法:https://github.com/pedronauck/yarn-workspaces-example
mum43rcc2#
我同意Yarn工作区可以帮助你完成你所追求的。否则,您将不得不弹出,因为
appIndexJs
的配置(设置为/src/index.js
)是在react-scripts
包的config/paths.js
中设置的。弹出后,可以修改config/paths.js
变量appIndexJs
以适应不同的appIndex。v2g6jxz63#
添加此解决方案为我解决了同样的问题:
jv2fixgn4#
基于上述答案,请执行以下操作: