angular 2 package.json文件的说明

Explanation for angular 2 package.json file

本文关键字:说明 文件 json package angular      更新时间:2023-09-26

我不愿意使用angular 2快速入门指南中提供的typescript编译器,而是使用gull.js。然而,我对angular网站上提供的package.json文件有一些问题:

{
  "name": "angular-starter",
  "version": "1.0.0",
  "scripts": {
    "tsc": "tsc",
    "tsc:w": "tsc -w",
    "lite": "lite-server",
    "start": "concurrent '"npm run tsc:w'" '"npm run lite'" "
  },
  "license": "ISC",
  "dependencies": {
    "angular2": "2.0.0-beta.0",
    "systemjs": "0.19.6",
    "es6-promise": "^3.0.2",
    "es6-shim": "^0.33.3",
    "reflect-metadata": "0.1.2",
    "rxjs": "5.0.0-beta.0",
    "zone.js": "0.5.10"
  },
  "devDependencies": {
    "concurrently": "^1.0.0",
    "lite-server": "^1.3.1",
    "typescript": "^1.7.3"
  }
}

我确信很少有像tsc, tsc:w脚本命令和typescript devDependency这样的东西可以安全地删除,但我不确定concurently依赖项和dependency部分的用途,你们能提供更多关于angular2之后的所有依赖项的信息吗?我试着沿着顶点在快速入门指南中查找这些,但没有找到,因为它们很短。

concurrently是一个npm包,它允许一次运行多个CLI命令,请参阅package.json中的下面一行。concurrent命令来自concurrently。你可以安全地移除它。

"start": "concurrent '"npm run tsc:w'" '"npm run lite'" "

package.json文件中的dependency部分允许您跟踪项目依赖关系。在依赖项部分使用这些包的引用可以使用模块捆绑器,如webpack、browserfy等。如果新版本引入了任何突破性的更改等,它还可以使您的项目链接到每个包的特定版本。在package.json文件中包含此部分可以删除受源代码管理的包目录(node_modules)。假设另一台机器只需要package.json和dependency部分就可以在上面再次安装这些软件包

对于依赖部分中的每个包,请搜索npmjs网站以获取更多详细信息。

@nexus23的答案很好地增加了一些分数。我的答案还没有完成,我知道,但评论太长了,所以作为答案发布希望这能帮助到一些人。

Package.json是项目的重要文件,您可以在其中导入项目中使用的依赖项列表。基本上有三种类型的依赖

  • 依赖项
  • DevDependency
  • peerDependency有关更多文档,请参阅此处的答案

现在开门见山,即回答这个问题。为了运行angular2项目,我们必须包含一些依赖项。下面列出了这些依赖项。

  1. angular2-是angular2项目的基本文件。这是我们项目中最重要的文件。(稳定的最新版本是angular2测试版)

  2. systemjs-是通用动态模块加载程序-在浏览器和NodeJS中加载ES6模块、AMD、CommonJS和全局脚本。适用于特蕾西和巴别尔。我们使用systemjs Config在主文件(即index.html)中设置baseUrlto Import main file等,如下所示:

    <script> System.config({ baseURL: '<%= APP_BASE %>', paths: {'*': '*.js?v=<%= VERSION %>'}, defaultJSExtensions: true }); </script>