我正在学习 React 并编写我自己的组件,但我遇到了项目组织方面的问题。
这是我的树
Project_Folder
- Components
- Form
- index.js
- form.less
- package.json
- Button
- index.js
- button.less
- package.json
- node_modules
- <million unknown packages>
- application.js
- webpack.conf.js
在我的 application.js
中,我这样导入表单: import Form from './Components/form/index.js';
最近我想如果我只是把我的组件文件夹在 node_modules
文件夹中 我可以使用 import Form from 'Components/Form';
导入我的组件,这要好得多。但是随后开发这个组件就变成了 hell ,因为每当我进入 Node 文件夹时,它都有数百万个其他模块,这些模块是 webpack 或 babel 或 mini-CSS-extractor 所需要的。
是否有任何解决方案可以在 node_modules 中更好地组织,或者我应该全局安装开发工具?
最佳答案
绝对不应该将您的组件放在 node_modules 目录中,那是您只保留应用程序依赖项的地方。这可能是一个很好的 read for you .特别是当你将使用 git 存储库时,你不应该将你的 node_modules
目录复制到那里,因为,正如你所注意到的 - 它是巨大的。在克隆 repo 后,让任何其他使用此代码的人自行安装依赖项。
有几个约定 - 一个是将您的组件保存在 src/
目录中。我对您的建议是全局安装 create-react-app
(React 站点的样板生成器,available here)并检查它的约定。对你来说应该是一个很好的教训。
我关心的一件事是为什么每个组件中都有 package.json
?整个项目应该只有一个 package.json
文件。 Read here .
如果您希望文件路径更短且更易于阅读/使用,您可以使用 Webpack 创建别名 like this .
关于javascript - ES6 导入和 node_modules hell ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57537379/