Node.js 使用react framework时,节点\u模块的文件过多
当我使用react framework并执行Node.js 使用react framework时,节点\u模块的文件过多,node.js,reactjs,npm,npm-install,node-modules,Node.js,Reactjs,Npm,Npm Install,Node Modules,当我使用react framework并执行npm安装时,在我的节点单元模块上生成了大约27000个文件。问题不在于大小,而在于文件的数量。如果我必须将该目录复制到其他地方,由于文件太多,需要很长时间。如果我必须删除它,那也需要很长时间。我的Google drive sync没有节点_模块的“排除文件夹”选项,因此,将其与云同步也需要很长时间。我也不喜欢我的每个react项目都会生成另外27000个文件 有人能解决这个问题吗?基本上,我不希望我创建的每个react项目都有27000个文件。我想在
npm安装时
,在我的节点单元模块上生成了大约27000个文件。问题不在于大小,而在于文件的数量。如果我必须将该目录复制到其他地方,由于文件太多,需要很长时间。如果我必须删除它,那也需要很长时间。我的Google drive sync没有节点_模块的“排除文件夹”选项,因此,将其与云同步也需要很长时间。我也不喜欢我的每个react项目都会生成另外27000个文件
有人能解决这个问题吗?基本上,我不希望我创建的每个react项目都有27000个文件。我想在某个地方有一个全局节点模块,所有react应用程序都会调用它,而不是创建自己的节点模块文件夹
这是我的package.json
{
"name": "react-typescript-tutorial",
"version": "0.1.0",
"private": true,
"dependencies": {
"axios": "^0.18.0",
"enzyme": "^3.3.0",
"react": "^16.4.1",
"react-bootstrap": "^0.32.1",
"react-dom": "^16.4.1",
"react-redux": "^5.0.2",
"react-router-dom": "^4.3.1",
"react-router-redux": "^5.0.0-alpha.9",
"redux": "^4.0.0",
"redux-thunk": "^2.3.0"
},
"scripts": {
"start": "react-scripts-ts start",
"build": "react-scripts-ts build",
"test": "react-scripts-ts test --env=jsdom",
"eject": "react-scripts-ts eject"
}
}
另外,如果能生成更少的文件,我愿意换一个不同的包管理器,比如纱线或其他任何东西。试试这个:
npm link
npm链接
npm install
安装模块。
您应该为所有模块安装全局,并将环境变量NODE\u PATH
设置为全局NODE\u模块。
当需要时,node会调用它。我同意,它们生成的文件数量太多了。如果他们不在一个新文件中只写十行就更好了。我认为这个结构不是很坚固。而糟糕的文件系统必须生成所有这些文件。幸运的是,我不再使用硬盘了,但处理很多文件仍然需要更长的时间
编辑:所以我刚刚检查了我的react++mobx,+decorators项目,它有一个用于重复文件的小项目的node_modules文件夹。它有16000个重复文件,可以清除150MB或280MB的文件。我认为这是荒谬的没有必要的。可能每个依赖项都有多个版本,而他们本可以使用相同的版本。我正在考虑学习其他东西 Elm听起来很有希望实现有组织、整洁的文件系统。
谷歌聚合物项目的目标是改变网络,使其完全不需要任何框架。您是否将项目存储在谷歌硬盘中?我建议改为使用GitHub,并使用
.gitignore
文件,其中包含节点\ u模块
。我们在主要项目中使用TFS。我想这只是一个例子。此外,当我们做备份硬盘驱动器之类的事情时,处理这么多文件的时间要长得多。这些文件是依赖项,因此,无论您使用什么包管理器,都需要这些文件。你所能做的就是“忽略”同步/备份/任何你使用的工具中的文件夹。如果他们没有这样的支持。。。使用另一个工具。。。或者不要使用reactAh,我明白了。我不知道是否可以将每个项目的所有依赖项都存储在一个位置,但可能值得使用before备份。谢谢@Tholle,这确实有点帮助。而且,我不知道为什么这会被否决这么多,很明显,如果像这样的帖子一开始就存在的话,出于各种原因,这是一些人的担忧。