javascript - AngularJS 中的 node_modules 目录是什么?

标签 javascript angularjs node.js npm bower

我正在探索 AngularJS tutorial项目,发现里面有node_modules目录,如果60MB大小。

简单的客户端javascript项目真的需要如此庞大的未知数据语料库吗?

我尝试删除此目录,但项目仍然有效。我怀疑它与 node.js 有某种关系,它是 npm 但如何?假设我需要在一些常规的 Web 服务器(不是 node.js)上运行我的项目,那么如何知道哪些文件/目录是不需要的?

许多 javascript 库需要使用 bower 来安装它们。如果我使用 bower,这是否意味着我需要保留 node_modules

最佳答案

node_modules 目录仅用于构建工具

应用根目录中的 package.json 文件定义了在您运行 npm install 时将哪些库安装到 node_modules 中。

对于 Angular 应用程序,在您的开发机器或构建服务器上,您通常会使用来自 npm(node.js 包管理器)的其他 Javascript 库来构建您的 Angular 应用程序。任务可以连接资源,使用 CSS 预处理器(如 LESS 或 SASS)、缩小、替换值等。管理和运行这些任务的最常用工具称为 gruntgulp,也是通过 npm 安装的。

部署应用时,您只分发生成的构建,而不是任何源文件或构建工具。

当然可以在不构建任何东西的情况下编写 AngularJS 应用程序。

从评论中编辑:当您深入了解 Angular 时,甚至在客户端应用程序中也有使用 npm 安装的库的更高级技术,然后您可以选择性地选择您需要的库,而不是整个 50MB+ 的东西。不过,我建议您继续使用基本方法,直到您掌握它们为止。

关于javascript - AngularJS 中的 node_modules 目录是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34526844/

相关文章:

具有可选+可变参数的 Node.js 指挥官

python - Node.js Python 外壳 : while true loop not working

javascript - 如何将所有模板包含到一个 Angular 文件中

javascript - 更改基于对象结构的条件

javascript - Node.js:如何在循环中调用带回调的方法?

javascript - Notepad++ 的字符串转义/取消转义插件

angularjs - angular-meteor 根据参数查找 MongoDb 集合并返回

javascript - 根据国家/地区将用户重定向到子域(au、nz 等)的最佳方法是什么?

javascript - 仅在文本框中允许中文字符和英文数字 - Javascript

javascript - 如何阻止递归函数修改它自己的变量?