请在package.json中考虑这种依赖关系:
"dependencies": {
"@angular/common": "2.2.1",
"@angular/compiler": "2.2.1",
"@angular/core": "2.2.1",
"@angular/forms": "2.2.1",
"@angular/http": "2.2.1",
"@angular/platform-browser": "2.2.1",
"@angular/platform-browser-dynamic": "2.2.1",
"@angular/router": "3.2.1",
"@angular/upgrade": "2.2.1"
}
我想使用Angulajs的捆绑版本,当我运行此命令时:
npm install angular
安装angular.min.js
我想知道那些有什么区别?有没有办法使用npm捆绑依赖项并创建单个文件?
另一个问题是我知道Angular 4
已经发布,当我运行此命令时:
npm install angular
它会安装版本为angular.min.js
的{{1}},那么这个文件是什么?为什么它过时了?
答案 0 :(得分:3)
对于第二个问题,您可以通过运行此命令来安装Angular 2+:npm install @angular/[package]
。例如:
npm install @angular/common@4.1.2 -- installs @angular/common v4.1.2
同样重要的是要注意AngularJS(版本1)与Angular(版本2 +)不同。
答案 1 :(得分:3)
这种情况的最大区别在于Angularjs(1.x)为您提供了一个大文件,整个框架并没有选项。只使用它中的一部分,甚至一点点,你必须包括它。
另一方面,Angular 2非常模块化。使用您想要的东西,甚至添加自己的文件并将它们捆绑在一起。由于它在引擎盖下使用webpack,因此它非常易于配置,可以将您自己的css甚至图像放入捆绑中。你怎么问? ng build
这会运行webpack,它会创建一个包含各种脚本和css文件的dist
文件夹。将此文件夹视为您的捆绑包。而不是angular.min.js你基本上有一个myapp.min.js
,它可以包含应用程序中的所有内容,包括角度。
你可能在思考"但我只想要一个文件!"。当然,你可以拥有它。我认为这样做是不合适的,因为默认值实际上是明智的。包含所有内容的一个大5mb js文件并不总是最好的方式。但你可以拥有它!
ng eject
此命令将webpack配置输出到webpack.config.js
,您在此处所做的任何更改都会在您下次运行ng build
或ng serve
时触发。只有一个文件而不是三个文件并不复杂,但是你必须自己研究一下webpack!
答案 2 :(得分:3)
Angular 2完全重写了角度1.因此我建议将这两种语言视为两种不同的语言。不要混淆概念。 Angular 2+是完全模块化的,并且嵌入到通用,编译器,核心,http等中。这是为了树木震动。
如果要将角度依赖项捆绑到一个构建中。使用
ng eject --force
并使用
安装CommonsChunkPluginnpm install -save-dev commons-chunk-plugin
然后,在webpack.config.js中配置CommonChunkPlugin。
要安装任何角度模块,请使用:
npm install @angular/[module-name]
答案 3 :(得分:3)
我强烈建议你研究:https://github.com/angular/angular-cli
这是由有角度的团队建立的,以帮助人们快速移动角度4.许多其他框架也做同样的事情。例如,react对此有相同的想法:https://facebook.github.io/react/blog/2016/07/22/create-apps-with-no-configuration.html
这不是直接回答你的问题,但你可以避免设置角度4所涉及的复杂性。事实上,角度cli的目的是什么,以帮助人们不停地花费数小时来弄清楚什么要安装的依赖项。
另外,不要花费数小时设置webpack来构建一个生成构建的角度项目。使用angular-cli,它只是运行以下命令:
ng build --prod
答案 4 :(得分:3)
当您运行npm install angular
时,会安装AngularJS(v1.x)
这就是为什么,当您运行该命令时,安装了 AngularJS 的最新稳定版本,即v1.6.4。
注意:Angular v1(AngularJS)仍为supported。最后一次稳定发布是3个月前。
<小时/> 现在的问题是你应该根据要求选择上述任何一种。您遵循的步骤是获取AngularJS(v1) 您可以查看Angular Quickstart以开始使用Angular2 +,现在更新为v4.4.5(截至2017年7月5日)。
Package.json
,您会注意到,
"dependencies": {
"@angular/common": "~4.0.0",
"@angular/compiler": "~4.0.0",
"@angular/core": "~4.0.0",
"@angular/forms": "~4.0.0",
"@angular/http": "~4.0.0",
"@angular/platform-browser": "~4.0.0",
"@angular/platform-browser-dynamic": "~4.0.0",
"@angular/router": "~4.0.0",
"angular-in-memory-web-api": "~0.3.0",
"systemjs": "0.19.40",
"core-js": "^2.4.1",
"rxjs": "5.0.1",
"zone.js": "^0.8.4"
},
应该安装当前稳定版本的 Angular
答案 5 :(得分:2)
提到Manubhargav,当您运行<script type="text/javascript">
$(document).ready(function() {
$('#countdown').countdown('2017/07/10 06:32:11', function(event) {
$(this).html(event.strftime('%H:%M:%S'));
});
});
</script>
时,将安装AngularJS(v1.x)。
要安装最新版本的角度2,请使用<?php
$count = $DB_con->prepare("SELECT * FROM `auction` WHER ORDER BY id DESC");
$count->execute();
foreach ($count->fetchAll() as $rowL)
{
?>
<script type="text/javascript">
$(document).ready(function() {
var countdw;
countdw = = <?php echo $rowL['dateauction']; ?>
$('#countdown').countdown(document.write(countdw), function(event) {
$(this).html(event.strftime('%H:%M:%S'));
});
});
</script>
<?php
}
?>
。
此命令将更新npm install angular
和npm install angular-2 --save
个文件,并为其添加package.json
依赖项。
注意:如果您遇到package-lock.json
错误,请按npm安装:angular-2
要安装最新版本的角度4,您可以使用以下两种方法之一:
typings install
npm install typings --global
npm install -g @angular/cli
ng new my-app
cd my-app
ng serve --open
项目构建完成后,将在http://localhost:3000/