iza*_*des 6 jquery node.js npm node-modules bootstrap-4
我想知道 node_modules 文件夹到底是什么以及用于什么。我知道当我们使用 npm 下载任何库时,该库会转到 node_modules,但我知道当我们要将其上传到 github 时,我们必须忽略 node_modules 文件夹,因为它占用大量空间。通过 package.json 我们可以使用 npm i 下载所有依赖项,我的问题是...假设我想将我的应用程序/网站部署到某个服务器/主机,我是否也必须将 node_modules 文件夹上传到服务器?另一件事,通常我从网站下载我的 jquery 和 bootstrap 并复制到我的项目内的 css/js 文件夹中,但是这次我尝试使用 npm 并且一切都转到 node_modules 并且我使用的是cordova,当我执行命令cordova时build 既不生成我的 jquery 也不生成我的引导程序。所以这就是我的问题,如果我想主持我的项目,我真的必须上传 node_modules 吗?当它是cordova或ionic时,我还必须将node_modules复制到www文件夹吗?如果是,那么使用 npm 下载库有什么意义?这是真的吗?哪一个更好?去网站下载文件并粘贴到 www 或通过 npm 下载?
jfr*_*d00 11
node_modules 文件夹的用途是什么?
您可以将该node_modules
文件夹视为项目所依赖的外部模块的缓存。当您使用npm install
它们时,它们会从 Web 下载并复制到 node_modules 文件夹中,并且当您导入它们(没有特定路径)时,nodejs 会被训练在那里查找它们。我将其称为缓存,因为只需重新安装所有依赖模块(应在您的项目文件夹中列出),就可以随时从头开始完全重新创建 node_modules 文件夹。
但我知道当我们将它上传到 github 时,我们必须忽略 node_modules 文件夹,因为它需要很多空间。
这是因为没有理由将所有依赖模块的副本存储在您自己的 github 项目中。您正在使用的准确版本是已知的,存储在您package.json
或package-lock.json
使您在任何时候或任何其他人使用你的项目可以下载代码,然后干呕从原来的源中的所有其他相关的模块(甚至包括你正在使用完全相同的版本)。因此,没有理由在您自己的项目中存储所有这些依赖模块的单独副本。那只会是浪费,并且会使升级到所有这些依赖模块的更新版本变得复杂。
所以这就是我的问题,如果我想托管我的项目,我真的需要上传 node_modules 吗?
如果您的项目在您的本地机器上运行并且您现在想要将它移动到您的托管位置,最好在托管机器上重新安装所有依赖模块,而不是从您的开发机器复制它们。这是因为在主机上安装它们的过程(可能是与您的开发机器不同的平台或操作系统)可能会为特定的主机环境使用一些不同的安装过程。
归档时间: |
|
查看次数: |
11116 次 |
最近记录: |