Vue.js中如何動態的載入、卸載組件?
01-05
項目中使用了Vue.js、Vue router,需求如下:
1、當用戶關閉component時,將該component卸載,再次打開時重新載入。2、當用戶切換到其他component時,該component是被緩存的,切換回來時是已經載入過的。現在Vue router中是通過keep-alive統一設置的,要麼是全部緩存、要麼全部重新載入。
請教如何實現以上需求?多謝。
挖個墳看起來主要矛盾就是只給部分組件加上&
&
&
&
&
&
&
{
path: "",
name: "",
component: ,
meta: {keepAlive: true} // 這個是需要keepalive的
},
{
path: "",
name: "",
component: ,
meta: {keepAlive: false} // 這是不會被keepalive的
}
不知道答主是不是問的這個,使用canReuse設置各個組件自身是否可以被重用。canReuse | vue-router文檔 npm package
&
//Hello.Vue
&
&
&你來搞我啊&
&
&
&
&
//404.vue
&
&
404:請不要太著急
&
&
&
&
&
&
& &
切換&
vm.$destroyhttp://cn.vuejs.org/api/#vm-destroy
銷毀沒研究,非同步載入component實現了,但老感覺方法有點怪怪的。。
1,使用webpack編譯component成一個js文件,在js中將該組件進行全局註冊。2,在需要使用改component先判斷是Vue中是否已註冊過該組件,沒有就從伺服器獲取js,有就使用動態component渲染該組件1.0推薦的感覺好麻煩。。不知樓主有木有其他解決方案這個問題我也遇到了,設置keep-alive時緩存全局,本以為可以通過vue-router的鉤子函數去解決按需載入,比如進入過的頁面不需要重新載入, 而不需要緩存 如詳情頁及發布頁面就需要重新載入。 需要怎麼解決
請問有解決方案了嗎
組件寫在app.vue裡面,通過v-show來控制顯示隱藏
推薦閱讀:
※穩妥構造函數模式和工廠模式創建對象有什麼區別?
※Google Polymer是前端組件化的未來!那對於現在當下,又該採用什麼技術實現組件化呢?AngularJs可以勝任嗎?
※如何評價 TypeScript?
※如何在 React 中運用 CSS?
※如何評價Knot.js?
TAG:前端開發 | JavaScript | Vuejs |