在ES6中编写控制器、服务和指令(如果有一种方法的话)推荐的方法是什么(使用跟踪),以便大多数相同的代码可以在AngularJS 2.0中使用。我意识到,AngularJS 2.0仍然处于开发阶段,但是如果我今天要启动一个新的应用程序,我会遵循什么样的风格或约定,所以迁移到2.0将会减少痛苦。
声明类然后将对该类的引用传递到controller或service是我看到的一点:
var app = angular.module('myApp', []);
class MainCtrl {
....
}
class MyService {
....
}
app.controller('MainCtrl', MainCtrl);
app.service('MyService', MyService);是否应该将MyService类移动到一个单独的文件中,以便将来我可以只使用export并将其注入?
当我使用AngularJS (<= 1.3.x)和ES6处理一个新项目时,还需要记住什么?
在更新之后,我写了一系列博客文章,讨论我在博客上的发现
发布于 2014-10-23 21:07:05
ngEurope的角形小组今天证实,$controllers,$scopes,$services和jqLite 1.x将不再存在于角2.0中。还将有一个全新的路由器,他们打算支持1.3在未来几个月。
为了准备迁移,他们建议遵循到目前为止在社区中发展起来的最佳做法/风格/惯例,当2.0准备就绪(明年某个时候)时,他们将找到最佳的迁移方式。
此外,他们还表示,在2.0版发布后,1.3将至少在一年半内得到完全支持。
发布于 2015-04-15 03:54:07
您可以定义ES6类并将它们添加到现有的角1.x应用程序中。您需要设置transpiling等,但下面是一个一般示例:
class PersonService{
constructor(){
}
getPerson(){
return 'Jim Smith';
}
}
angular.module('app').value('PersonService', PersonService);
class GreetingService{
constructor(){
}
sayHello(){
return 'Hello from ES6!';
}
}
angular.module('app').service('GreetingService', GreetingService); 这里有更多详细信息:http://www.syntaxsuccess.com/viewarticle/552dc66f955de264e1fbbaee
https://stackoverflow.com/questions/26395757
复制相似问题