在创建Angular 1应用程序时,我应该记住哪些Angular 2方面?

时间:2015-09-18 09:34:38

标签: javascript angularjs angular typescript

我很快就要在Angular 1.x中重写一个相对较大/复杂的Web应用程序。我还是要学习Angular 1.x.我知道Angular 2.x将与1.x完全不兼容,但是我有什么办法可以为Angular 2.x中的重写做准备吗?

例如:

  • 代码结构:我可以将必须​​抛弃的代码与可重用的代码分开吗?当前的Web应用程序没有REST API,因此我假设至少我将编写的REST API可以重用于2.x版本。但我在这里关注客户端代码。

  • 语言选择:我很可能会被要求使用纯JS(浏览器直接使用的版本),但使用Typescript代替编写Angular 1.x应用程序是明智的,因为那是什么Angular 2.x本身是用?

  • 编写的
  • 还有别的吗?

2 个答案:

答案 0 :(得分:2)

我建议使用自己的" controllerAs"基于控制器。这使您接近Angular 2.0组件样式。事实上,它非常相似。 这是我的意思的一个例子:

http://www.syntaxsuccess.com/viewarticle/migrating-from-angular-1.x-to-angular-2.0

答案 1 :(得分:1)

没有理由在Typescript中编写Angular 2.x,除非您更喜欢它或想要对代码做出贡献,或者如果某些东西不起作用,请通过Angular 2.x代码来更好地理解它。 Typescript不会使JS更快或类似,它只提供静态类型,用于辅助您使用的IDE之类的开发工具。想想Visual Studio。

我建议你开始使用ES6,它引入了Angular 2使用的类(语法糖,js仍然是js),通过使用转换器将ES6代码转换为ES5,我认为越来越多的人会使用它(对克罗克福德和其他人的恐怖)。

不要使用复杂的指令内容,如transclude,compile / pre-link等,保持简单,因为Angular 2.x正在削减发明混淆程序员的新方法的思维方式。它们不完全相同,但Angular 2.x将基于组件,它们使用模板/视图的方式类似于指令。

熟悉ES6导入/导出。

不使用$ scope,它将以当前形式删除。

我实际上写了一篇关于它的更详细的博文,http://www.alajmovic.com/2015/07/18/preparing-for-angular-2.html