4
當Aurelia開始使用if.bind
時,不會導致子視圖/視圖模型被破壞。它確實經歷了綁定/解除綁定/分離循環,我可以看到這對某些場景有意義。但我也希望能夠徹底銷燬view/viewModel並從頭開始重新創建它。我創建了一個plunker,它使用if.bind
來展示我的最佳努力。我正在尋找關於如何將<我的其他元素>完全銷燬的建議。謝謝!如何強制Aurelia在不使用路由器的情況下銷燬/重新創建視圖/視圖模型對
這比我使用'repeat.for'的第一次入侵更好。我仍然認爲這是一種黑客行爲,因爲我認爲撰寫是針對可能使用不同種類的viewModels的情況。 Jeremy Danyow [推薦](https://www.danyow.net/aurelia-custom-element-vs-compose/)儘可能使用Compose上的自定義元素。另外值得注意的是'@ transient'在這種情況下並沒有什麼不同,view/viewModel被視爲瞬態而不管。也許這種情況需要github問題? – FunkyCodeMonkey
正確 - 我只是沒有清理臨時裝飾器,但它並不適用於此。在這種情況下,瞬態是默認行爲。你可以使用'@singleton()'來指示路由器重用實例。 –
我很確定自定義元素無法使用單例視圖模型。因此,多個元素可以構建各自的視圖模型。但是這種情況有點不同 - 看起來模板引擎掛在元素引用上並將其添加回來,而不是從頭開始創建。 github問題可能會引發關於此行爲的一些對話。 –