复制 React 应用程序文件夹不起作用?

问题描述 投票:0回答:1

(顺便说一句,这是在 Mac 上。Mac 上的

cp -r
似乎是“历史性的”,应该用
cp -R
代替)。

我尝试了以下方法:

mkdir TryContext
cd TryContext
npx create-react-app my-app
cd my-app

然后我制作了一个可以运行的应用程序,并且

npm start
能够启动服务器并运行它。

但是如果我想制作此应用程序的版本 2,并首先克隆文件夹:

cd ..
cp -r my-app my-app-02

将所有内容复制到

my-app-02
,并将
cd
复制到该文件夹中并执行
npm start
,它将出错,并显示

> [email protected] start /Users/username/code/TryContext/my-app-02
> react-scripts start

internal/modules/cjs/loader.js:800
    throw err;
    ^

Error: Cannot find module '../scripts/start'

我尝试了不同的方法,尝试了

npm rebuild
,然后
npm start
,并且成功了。但我想如果你“按原样”复制一个目录,然后使用它,
npm start
应该启动服务器而不需要做任何事情?为什么会这样?除了
npm rebuild
之外还有什么方法可以解决这个问题?

reactjs npm create-react-app npm-start
1个回答
2
投票

TL;RD:当您使用

cp -r
复制时,它并没有真正保留符号链接,它只是复制文件内容。因此,在这种特殊情况下,
npm start
找不到必要的符号链接。可能的解决方案之一是在应对时使用
cp -a
,这样可以保留符号链接并避免此问题。

模式详细答案在这里

© www.soinside.com 2019 - 2024. All rights reserved.