每次切換路由的時候需要加載頁面模板,,和所對應的頁面JS采用require.js,發(fā)現(xiàn)每個頁面自己js通過avalon.define()定義的。。第一次渲染正常,下一次會報錯error:[' + $id + '] had defined,代碼如下define(["avalon"],function(avalon){return function(container,menu,param){var canSubMenus = avalon.define({$id:"can_subMenus",menu:{}});avalon.scan(container);};});如果把avalon.define寫在外面。。。不是每次定義發(fā)現(xiàn)第一次正常。。第二次不會渲染,看了下代碼發(fā)現(xiàn)vm && !vm.$element 這個限制。。vm依然存在于avalon.vmodels。上一次已經(jīng)初始化好了,所以不會重新渲染。define(["avalon"],function(avalon){var canSubMenus = avalon.define({$id:"can_subMenus",menu:{}});return function(container,menu,param){avalon.scan(container);};});1.當頁面重新進來的時候,如何讓這個VM重新渲染一遍?2.當ms-controlll對應的真?zhèn)€元素移除的時候,其對應的VM有沒有辦法消除?3.目前本人這么處理的delete avalon.vmodels[$id],感覺太簡單粗暴了有沒有更好的辦法。4.當從一個單頁面切換的另一個單頁面的時候,如何做好上一個頁面的清理工作?5.avalon2這個框架。。適合單頁面應用嗎?6.以棄坑。。。投奔vue.js或者knockout.js。。。avalon2只提供創(chuàng)建方法,沒有提供解綁方法。。。。這個有點坑,以后有機會在用avalon2,感覺整體還是不錯的。嘿嘿。
avalon2 單頁面時候切換頁面問題
守候你守候我
2018-09-13 11:10:35