0
在Durandal網站上Master Detail sample,project.activate
函數每次在下拉列表中更改項目時調用兩次。Durandal - 激活在主詳細示例中調用兩次
第一次激活在write
方法Activator
中被調用。第二次激活在composition.bindAndShow
中調用。
如果我是正確的,一個顯而易見的解決將被更換(以index.html
)這個
<!--ko compose: activeProject--><!--/ko-->
與此
<!--ko compose: { model: activeProject, activate: false }--><!--/ko-->
但迪朗達爾documentation說,在使用組成>其他設置>激活:
注意:如果您使用激活器,它將控制激活調用你不應該試圖通過組合綁定來操縱它。
所以我不應該那樣做。什麼是解決這個問題的正確方法?
我現在正在做一些simillar,但我阻止了第一次激活,並允許第二次激活(來自組合),因爲它與Knockout更好地工作。缺點是我必須在每個受影響的視圖模型中這樣做。插件解決方案會更好...如果你知道如何做到這一點(從激活塊激活)在插件我很想聽! – Pol
說了我現在仍然需要Activator去激活,以後可能還需要更多。只是不需要它激活調用:) – Pol
如上所述,我不知道你看到的行爲是否是設計。最好把它作爲一個問題提出來。 – RainerAtSpirit