我剛剛試圖將AS3項目的快速懸掛裝置使用,但當我試圖訪問它們時,注射是空的。它只在我使用injector.injectInto()顯式注入應該有引用的對象時才起作用。但這不可能是SwiftSuspenders的最佳方法,對吧?SwiftSuspenders工作不正常嗎?
1
A
回答
0
難道你沒有通過任何修改訪問你在類構造函數中注入的屬性嗎?如果是這樣,請使用PostConstruct
元。
public class Example
{
[Inject] public var foo:Bar;
public function Example()
{
foo.barMe(); // throws null reference error
}
[PostConstruct]
public function _postConstruct():void
{
foo.barMe(); // OK
}
}
PostConstruct:在注射 完成依賴於 自動DI類
實例調用自動方法只准備使用 的DI完成後。在注入類中註釋 方法與 [PostConstruct]元數據使得它們在所有注入完成 完成後直接調用 ,並且它是 可安全使用該實例。通過使用訂單參數: [PostConstruct(order = 1)],可以以定義的 順序調用多個 方法。
0
你做需要調用injectInto
需要依賴每個對象。圍繞這一步驟的方法是將該步驟抽象爲依賴注入容器(「DI容器」),該容器爲您管理該容器。 MVC工具包Robotlegs利用自己的系統完成自動化依賴注入。
這裏是從「動作腳本開發者指南的Robotlegs」的摘錄:
背後自動化DI容器的目的是抽象的 實現從應用程序本身的依賴。本質上,我們將這項工作完全分開,這樣應用程序代碼不再需要執行此操作,而是要求第三方 - DI 容器完成此操作。
相關問題
- 1. 工作不正常
- 2. 工作不正常
- 3. 工作不正常
- 4. 工作不正常
- 5. 工作不正常
- 6. 工作不正常
- 7. 工作不正常
- 8. 工作不正常
- 9. 工作不正常
- 10. 工作不正常
- 11. 工作不正常
- 12. 工作不正常
- 13. 工作不正常
- 14. 工作不正常
- 15. 工作不正常
- 16. 工作不正常
- 17. 工作不正常
- 18. 工作不正常
- 19. setRingerMode正常不能正常工作
- 20. 正常化unicode不能正常工作
- 21. LD_LIBRARY_PATH不工作,而LD_PRELOAD正常工作
- 22. CodeIgniter AJAX:POST不工作,GET工作正常
- 23. onblur()不工作,而onclick()工作正常
- 24. JS不能正常工作
- 25. jeditable不能正常工作
- 26. sharpdevelop.exe不能正常工作
- 27. 最後工作不正常
- 28. 的Array.sort()工作不正常
- 29. COMPUTE SUM工作不正常
- 30. Zimbra不能正常工作