我不愿意使用angular 2 quick start guide中提供的typescript编译器,而是使用gulp.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
依赖项和{{1}之类的目的一般来说,你们可以提供有关angular2之后的所有依赖关系的更多信息吗?我试着在快速启动指南中查找这些内容,但是没有运气,因为它们很短。
答案 0 :(得分:3)
concurently是和npm包允许一次运行多个CLI命令,请参阅package.json中的下面一行。 concurrent
命令来自concurrenlty。你可以安全地删除它。
"start": "concurrent \"npm run tsc:w\" \"npm run lite\" "
package.json文件中的 dependency
部分允许您跟踪项目依赖性。在依赖部分中使用这些包的引用允许您使用webpack,browserify等模块捆绑器。如果新版本引入任何重大更改,它还会将您的项目链接到每个包的特定版本。在package.json中包含此部分file允许您删除要在源代码管理下的包目录(node_modules)。再次安装这些软件包让我们说另一台机器只需要package.json和dependency
部分。
对于依赖关系部分中的每个包,请搜索npmjs网站以获取更多详细信息。
答案 1 :(得分:0)
使用@ nexus23的答案添加一些要点。我的回答没有完成,我知道但是为了评论它太长了所以发布回答希望这将有助于某些人。
Package.json是项目的重要文件,您可以在其中导入项目中使用的依赖项列表。 基本上有三种类型的依赖
现在已经到了这一点,即回答这个问题。我们必须包含几个依赖项才能使我们的angular2项目运行。下面列出了它。
angular2 - 是angular2项目的基本文件。这是我们项目最重要的文件。 (稳定的最新版本是angular2 beta)
systemjs - 是通用动态模块加载器 - 在浏览器和NodeJS中加载ES6模块,AMD,CommonJS和全局脚本。适用于Traceur和Babel。
我们使用systemjs Config来设置我们的主文件中的baseUrl
,to Import main file
等,即index.html,如下所示:
<script>
System.config({
baseURL: '<%= APP_BASE %>',
paths: {'*': '*.js?v=<%= VERSION %>'},
defaultJSExtensions: true
});
</script>