node.js - 关于与 npm/gulp 脚本集成的说明

标签 node.js angular npm 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 更容易管理?

我知道这意味着我对这个主题知之甚少,任何帮助都会非常好。 我已阅读此链接( https://angular.io/guide/quickstart ),它对我有一点帮助,但我认为我错过了一些东西......

谢谢

亚历克斯

最佳答案

这些模块是“静态”的(shim/polyfills,反射(reflect)类元数据和区域的元数据),不需要参与模块管理。这就是为什么它们是在 SystemJS 外部配置的。

关于node.js - 关于与 npm/gulp 脚本集成的说明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38127703/

相关文章:

javascript - 按钮上的禁用属性

javascript - 在 Angular2 中重置路由更改时的服务变量

css 到 scss 迁移 - 如何集成通过 npm 模块包含的 css 文件?

node.js - 即使在服务器代码中添加 header 后,跨源请求也会被阻止

java - 带有静态字符串的线程安全 Servlet

ios - 推送通知 : How can I send push notification to a specific device using Pubnub?

node.js - Node JS & Sequelize : . findByPk 返回一个函数而不是一个对象

css - 移除 Material Stepper header

node.js - VSCode上的pwa-node类型启动配置是什么?

node.js - npm 错误 E401 : Unable to authenticate, 需要:基本领域 ="Sonatype Nexus Repository Manager"