0
定義角度服務時,需要傳遞構造函數。此構造函數將使用「new」關鍵字進行初始化,並將「new」返回的對象設置爲該服務。到現在爲止還挺好。爲什麼從角度服務返回函數
但是我經常遇到的實例,其中程序員如下創建服務:
app.service('aObj', function AClass(){
return function(a,b){
alert(a + b);
};
});
這被稱爲
aObj(1,2)
雖然我undertsand是aObj現在最終會被一個功能,我不明白爲什麼程序員會這樣初始化他們的服務。構造函數通常將具有象一個定義:
app.service('aObj', function AClass(){
this.var1 = undefined;
this.calculate = function(b){
alert(this.var1 + b);
};
});
然後最終人會調用此作爲 aObj.var1 = 1; aObj.calculate(2);
有人可以詳細說明使用前一種方法定義服務的目的嗎?
Plnkr: http://plnkr.co/edit/tpl:FrTqqTNoY8BEfHs9bB0f
一個合理的解釋..謝謝 – runtimeZero 2014-12-06 16:33:30