设置开发环境(node_modules重复)
(我是一个Actionscript
开发者,最终迁移到JavaScript
并且正在学习TypeScript
和AngularJS 2
让我知道这个问题太愚蠢/天真了,我会删除它)
我正在运行Angular 2教程 ,一切都很好,但是我想知道如何设置一个开发环境而不重复,例如“node_modules”和“typings”目录。 我明白,教程要自己完成,所以有重复。 我也得到,例如,下面的行是使用相对于项目文件夹的引用,所以它可以指向其他地方。
是否有避免重复节点模块的“最佳做法”? 我问,因为“node_modules”目录是145 MB。
import {Component} from 'angular2/core';
在每个项目中重复使用node_modules
是node_modules
devise的 – 拥有一个package.json
文件和一个相应的依赖文件夹的想法是让你的项目是自给自足的/孤立的,不依赖于它所使用的环境。
也就是说,你可以使用npm install [package] -g
命令在全局安装NPM模块,但是这里有一个实际的例子,说明你为什么不应该这样做 – 假设你有一个使用旧版本的Angular 2的项目,想要使用最新function开始第二个项目。 如果您使用的是全局Angular安装,则不可能; 更新版本会更新每个使用它的项目(这可能会破坏你的旧应用程序)。 如果每个项目都有单独的安装,则它们的版本可以不同,而不会造成任何问题。
将项目提交到版本控制时,这也很方便 – 如果整个应用程序依赖于全局安装的模块,而您(或贡献者)希望在另一台机器上工作,则必须通过并安装每个依赖项以便环境与最初开发的环境相匹配。比较一下,在package.json
列出您的依赖关系,并从repo中排除您的node_modules
文件夹 – 它们只需运行npm install
,NPM将安装所有相关模块他们。
我承认node_modules
的大小node_modules
可能会变node_modules
大,我希望它们能够在某个时候优化它 – 但是我不认为这是一个很好的理由,把它分开的所有好处都给了你!
- 如何configuration使用从PureScript编译的JavaScript模块的TypeScript项目?
- typescript node.js表示路由分隔文件的最佳实践
- Typescript:定义文件中的类和接口在编译的.js文件中被需要
- 无法使用angular度2从node.js服务器获取数据
- 如何find在Node + Typescript + VSCodeasynchronous函数调用缺less的等待?
- 使用Visual Studio代码将TypeScript编译为JavaScript
- es6模块到commonjs节点和谐旗下的打字稿
- 有条件的导入来切换实现
- Node.js中的相同命名空间中的每个文件的TypeScript类