我正在学习AngularJS 2从Angular 1.x迁移我的应用程序。我发现,它与Angular 1完全不同。如果我从Angular 1迁移到Angular 2,我会得到什么好处。我喜欢在迁移中获得你的建议,好处,经验和困难。
答案 0 :(得分:2)
Angular 2刚刚完全恢复了框架。
绩效改进:
与Angular 1.x相比,Angular 2.0的性能有所提升。 Bootstrap现在是角度为2.o的平台特定。因此,如果应用程序是来自浏览器的引导程序,它将调用与移动应用程序相比的不同引导程序。因此对于浏览器引导程序包:使用angular2 / platform / browser.dart。
对于移动加载,Apache Cordova可用于减少加载时间。
移动支持:
Angular 1.x专为响应式和双向绑定应用而设计。没有移动支持。虽然还有其他库可以在移动设备上运行angular 1.x. Angular 2.0是在考虑面向移动的架构时制作的。有一些库,即Native脚本,可以快速帮助移动Angular 2移动开发。使用Angular构建真正的原生移动应用程序NativeScript。它还在浏览器和移动应用程序上以不同的方式呈现相同的代码。
打字稿:
Typeular(TS)在Angular 2中大量使用.Google目前正在使用DART进行编码。 DART或TypeScript可用于Angular 2.学习TypeScript非常好,因为其他框架和库,即REACTJS也使用TS。因此,如果可以学习TS,那么很容易在项目中实现REACTJS和其他库。
如果任何开发人员来自JAVA,.NET背景TypeScript非常容易学习。
Angular 2中没有$ Scope:
Angular 2不再使用$ scope来粘合视图和控制器。当您在Angular 1中进行编码然后想要为项目尝试Angular 2时,这是最大的问题之一。但是,如果有人来自JAVA,.NET /后台可以轻松获取,因为语法更类似于Java。
function($scope)
{
$scope.comparison =”Angular 1 vs Angular 2”
}
//is replaced by
constructor()
{
this.comparison =”Angular 1 vs Angular 2”
}
基于组件的编程:
就像ReactJs一样,AngularJs也在使用基于组件的编程。组件创建较少依赖和更快的实体。我Angular 1我们有模块化编程概念。模块化编程是从JQuery代码很乱的事实演变而来的。现在组件UI使组件快速。
@Component({
selector: 'AngularComparison'
})
@View({
templateUrl: './components/example/AngularComparison.html'
})
export class AngularComparison {
constructor() {
this.comparison= “Angular 1 vs Angular 2”;
}
}
除此之外,全新的Angular 2框架还有其他改进:
注意事项