关于脚本与 npm 集成的解释 / gulp
Explanations about script integration with npm / gulp
我正在尝试使用 Angular2 快速入门指南设置一个工作项目,Visual Studio 2015,使用 TypeScript、NPM 和 gulp。
(Angular2 2.0.0-rc.3、TypeScript 1.8.10、npm 3.6.0 和 gulp 3.9.1)
按照网上的教程,有些地方我不是很明白,如果有解释会很有帮助。
NPM 允许我们获取我们需要加载到我们的应用程序中的最新模块。这意味着我需要使用 package.json 文件安装依赖项,如下所示:
"dependencies": {
"@angular/common": "2.0.0-rc.3",
...
"reflect-metadata": "^0.1.3",
"rxjs": "5.0.0-beta.6",
"systemjs": "0.19.27",
"zone.js": "^0.6.12"
},
...
安装后,我需要使用 gulp 将这些文件提供到我的根文件夹 (wwwroot) 中,这非常有意义。
之后,我需要根据我的应用程序需求配置 systemJS,以便它知道从哪里加载文件。
然后,按照快速入门,我需要设置脚本以导入我的 index.html 文件。
我不明白的是为什么我们手动导入这 3 个脚本,而我们可以在 systemJS 配置文件中设置它们?
(我说的是这些:
- node_modules/core-js/client/shim.min.js
- node_modules/reflect-metadata/Reflect.js
- node_modules/zone.js/dist/zone.js
)
仅仅是因为它是一个示例项目,所以可以这样做,还是有更好的理由?
我想这只是因为我们需要这些单个文件,而像@angular 这样的包包含很多使用 systemJS 更容易管理的文件?
我知道这意味着我对这个主题知之甚少,任何帮助都会非常好。
我读过 link (https://angular.io/guide/quickstart) 这对我有一点帮助,但我想我在那里遗漏了一些东西...
谢谢,
亚历克斯
这些模块是 "static"(shim/polyfill,反映 class 元数据和区域的元数据)并且不需要参与模块管理。这就是它们在 SystemJS 外部配置的原因。
我正在尝试使用 Angular2 快速入门指南设置一个工作项目,Visual Studio 2015,使用 TypeScript、NPM 和 gulp。 (Angular2 2.0.0-rc.3、TypeScript 1.8.10、npm 3.6.0 和 gulp 3.9.1)
按照网上的教程,有些地方我不是很明白,如果有解释会很有帮助。
NPM 允许我们获取我们需要加载到我们的应用程序中的最新模块。这意味着我需要使用 package.json 文件安装依赖项,如下所示:
"dependencies": {
"@angular/common": "2.0.0-rc.3",
...
"reflect-metadata": "^0.1.3",
"rxjs": "5.0.0-beta.6",
"systemjs": "0.19.27",
"zone.js": "^0.6.12"
},
...
安装后,我需要使用 gulp 将这些文件提供到我的根文件夹 (wwwroot) 中,这非常有意义。
之后,我需要根据我的应用程序需求配置 systemJS,以便它知道从哪里加载文件。
然后,按照快速入门,我需要设置脚本以导入我的 index.html 文件。
我不明白的是为什么我们手动导入这 3 个脚本,而我们可以在 systemJS 配置文件中设置它们?
(我说的是这些:
- node_modules/core-js/client/shim.min.js
- node_modules/reflect-metadata/Reflect.js
- node_modules/zone.js/dist/zone.js
)
仅仅是因为它是一个示例项目,所以可以这样做,还是有更好的理由?
我想这只是因为我们需要这些单个文件,而像@angular 这样的包包含很多使用 systemJS 更容易管理的文件?
我知道这意味着我对这个主题知之甚少,任何帮助都会非常好。 我读过 link (https://angular.io/guide/quickstart) 这对我有一点帮助,但我想我在那里遗漏了一些东西...
谢谢,
亚历克斯
这些模块是 "static"(shim/polyfill,反映 class 元数据和区域的元数据)并且不需要参与模块管理。这就是它们在 SystemJS 外部配置的原因。