use*_*044 5 javascript angular
我在Angular2食谱中看到,我们可以使用annotations数组来提供元数据,并将一个以上的Typescript装饰器附加到构造函数上.
我们还可以使用以下语法浏览类便捷API:
(function(app){
var HEROES = app.HEROES;
app.HeroService =
ng.core.Injectable().Class({
constructor: function(){},
getHeroes : function(){
return Promise.resolve(HEROES);
}
});
})(window.app || (window.app = {}))
Run Code Online (Sandbox Code Playgroud)
1.但是,如果我想连接两个装饰?我怎样才能做到这一点?似乎这一大块代码有效.如果我想要两个装饰器,这是正确的方法吗?
(function(app){
var HEROES = app.HEROES;
app.HeroService =
ng.core.Class({
constructor: function(){},
getHeroes : function(){
return Promise.resolve(HEROES);
}
});
app.HeroService = ng.core.Injectable(/*...*/)(app.HeroService);
app.HeroService = ng.core.Component(/*...*/)(app.HeroService);
})(window.app || (window.app = {}))
Run Code Online (Sandbox Code Playgroud)
2.然后,就是用注解阵列便利的区别?什么是最常用的语法?
其他问题,我认为下面的代码是有效的:
(function(app){
var HEROES = app.HEROES;
app.HeroService =
ng.core.Class({
constructor: function(){},
getHeroes : function(){
return Promise.resolve(HEROES);
}
});
//Optional, why ?
//app.HeroService = ng.core.Injectable()(app.HeroService);
})(window.app || (window.app = {}))
Run Code Online (Sandbox Code Playgroud)
3.我在我的应用程序的许多其他组件中使用此服务.Injectable函数是可选的,因为我不提供metadatas吗?或者我错过了一个重要的Angular概念?
4.关于ng.core命名空间的最后一个问题,这有什么区别:
(function(app){
var HEROES = app.HEROES;
app.HeroService =
ng.core.Class({
constructor: function(){},
getHeroes : function(){
return Promise.resolve(HEROES);
}
});
})(window.app || (window.app = {}))
Run Code Online (Sandbox Code Playgroud)
还有这个:
(function(app){
var HEROES = app.HEROES;
app.HeroService = function(){
this.getHeroes = function(){
return Promise.resolve(HEROES);
}
}
})(window.app || (window.app = {}))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
137 次 |
| 最近记录: |