:
app.service('nameService', function(){
this.Service = function (){console.log('hello')}
}
然后你可以使用这个服务(对象): nameService.Service() 所以我的问题是如何编写具有两个参数(名称,函数)的函数
function service ( name, function ){
// how angular declare object with that value of first argument ?
}
我问如何写函数如service(name,fn){}?
答案 0 :(得分:1)
您可以使用括号表示法来获取参数值。
功能服务(名称,fn){
var createService = function(){
return new fn()
}
this[arguments[0]] = func()
}
service('nameService',function(){
//here you can use 'this' because it's function constructor
this.getLog = function (){
console.log('hello')
}
})
//and you can user it like you want nameService.getLog()
//Console: hello
答案 1 :(得分:1)
AngularJs使用Dependency Injection注入服务。
“service”方法在角度对象上可用,因为在他的Prototype上。
angular.prototype.service = ...
您可以阅读有关原型继承的更多信息,MDN - Inheritance and the prototype chain