0
我有一個類用作從服務器獲得的一些數據的模型。這些數據以一個笨拙的xml對象開始,其中文本節點具有屬性,因此我將其轉換爲json格式時沒有簡單的字符串值。相反,我有:在Angular 2中爲依賴注入提供模型類的新實例
@Injectable()
export class FooString {
_attr: string;
value: string;
isReadOnly(): boolean {
return this._attr && this._attr === 'ReadOnly';
}
isHidden(): boolean {
return this._attr && this._attr === 'Hid';
}
}
然後,我的模式是這樣的:
@Injectable()
export class Payment {
constructor(
public FooId: FooString,
public FooStat: FooString,
public FooName: FooString) { }
}
一切與FooString的同一個實例結束。我如何爲每個人獲取離散實例?
我已經嘗試了工廠,但它仍然只創建一個實例:
export let fooStringProvider = provide(FooString, {
useFactory:(): FooString => {
console.log('in foostring factory');
return new FooString();
}
});
謝謝。我去做。我不明白我什麼時候應該使用'new',以及何時應該使用Angular的DI。你能啓發我,還是指向正確的方向?我上面給出的例子是其中一個簡單的對象,但我有其他的包含多個複雜的數據結構。它開始看起來很像一輛帶引擎,輪胎等的汽車的Angular.io例子。從表面上看,DI似乎很棒,但我只能有一個實例? – Andrew
我更新了我的答案。 –