2016-06-10 141 views
1

在Aurelia.js中,我看到了人們如何注入依賴關係的差異示例,但是還沒有找到關於何時明確包含注入註釋或按原樣使用註釋的明確答案。何時注入依賴關係或在Aurelia中如何使用?

例如:

import {inject} from 'aurelia-framework'; 
import {X} from 'X'; 
@inject(X) 
export class Y { 
    constructor(X) { 
     this.x = X; 
    } 
} 

import {X} from 'X'; 
export class Y { 
    constructor() { 
     this.ABC = someMethod(X); // using X without inject 
    } 
} 

爲什麼有人會選擇一個比其他?

+0

如果我的回答對您有所幫助,請給予好評並接受:) –

回答

2

如果import X from 'X';如果X是一個類,而不是一個類的實例,則應該使用依賴注入來允許Aurelia爲您提供該類的一個實例。

有時雖然模塊導出函數導出對象實例。在這些情況下,您不應該使用DI。

+0

這是正確的答案。 –

4

依賴注入實際上是Aurelia完全擁抱的design pattern。雖然你不是被迫採用這種模式,但它是一種最佳實踐,因爲你遇到的大多數Aurelia源代碼都將遵循這種模式。核心團隊成員Jeremy Danyow分兩篇撰寫了關於這個主題的精彩文章,我將在下面鏈接。

控制與Aurelia路上由Jeremy Danyow反轉:Part 1Part 2

+0

如果這個答案是有用的,user2874945,請upvote和接受,我會很高興 –

相關問題