为什么npm run弹出会浏览我所有的项目文件夹?

时间:2019-03-30 18:30:33

标签: npm webpack create-react-app

我正在尝试在新项目上运行npm run eject,以便可以配置Webpack文件,但是却收到此消息:

✗ npm run eject

> location@0.1.0 eject /Users/danale/Projects/location
> react-scripts eject

NOTE: Create React App 2 supports TypeScript, Sass, CSS Modules and more without ejecting: https://reactjs.org/blog/2018/10/01/create-react-app-v2.html

? Are you sure you want to eject? This action is permanent. Yes
This git repository has untracked files or uncommitted changes:

为什么引用所有项目文件夹?为了清楚起见,我正在使用CRA创建的一个项目文件夹中运行上述命令。

我不在所有项目的文件夹中,而是在一个新创建的项目的文件夹中。这么说,为什么npm会引用我所有其他项目?

2 个答案:

答案 0 :(得分:0)

在我从错误消息中建议的文档中阅读内容和进行修补之间,您要做的就是:

npm install node-sass

,然后可以开始将css文件更改为scss,并为您的项目创建其他scss文件。无需npm run eject

答案 1 :(得分:0)

在弹出使用react创建的create-react-app项目之前,它们会为您提供以下Cookie切割程序响应:

NOTE: Create React App 2 supports TypeScript, Sass, CSS Modules and more without ejecting: https://reactjs.org/blog/2018/10/01/create-react-app-v2.html

? Are you sure you want to eject? This action is permanent. Yes
This git repository has untracked files or uncommitted changes:

这样做的原因是很多人希望对其webpack.config.js文件具有细粒度的控制,并且您必须退出才能访问该文件在您的react-scripts模块中。现在弹出警告消息的部分说:

NOTE: Create React App 2 supports TypeScript, Sass, CSS Modules and more without ejecting: https://reactjs.org/blog/2018/10/01/create-react-app-v2.html

是要通知您,不必退出就可以利用预处理器,TypeScript等。...这是因为create-react-app并非总是支持轻松添加此功能,因此人们会跳出来使用预处理器和TypeScript

您正确的说,要使用SASS,您要做的就是:

  1. 通过以下方式安装node-sass模块:npm install node-sass
  2. 然后只需创建您的.scss文件并将所需的.scss文件导入您希望使用样式的组件中即可。另外,您也可以只拥有一个“主” .scss文件,其唯一的工作就是导入与您的应用相关的其他.scss文件。然后,将这个“主” .scss文件导入您的App.js文件中。

现在,弹出警告消息的这一部分:

This git repository has untracked files or uncommitted changes:

您可能会得到这个,因为您已经为运行create-react-app CLI的父文件夹设置了一个git存储库。基本上,在create-react-app界面所在的父文件夹之一中,有一个.git/config指向上游一个远程存储库。

希望有帮助!