我正在使用Vue.js及其官方路由器處理單頁應用程序。Vue.js路由器:組件準備就緒時運行代碼
我有一個菜單和一個組件(.vue文件)每個部分,我加載使用路由器。在每一個組件我有類似這樣的代碼:
<template>
<div> <!-- MY DOM --> </div>
</template>
<script>
export default {
data() {},
methods: {},
route: {
activate() {},
},
ready: function(){}
}
</script>
我想執行一段代碼(INIT一個jQuery插件),一旦組件已經完成了過渡。如果我在ready
事件中添加我的代碼,它僅在組件第一次加載時才被觸發。如果我在route.activate
中添加我的代碼,它每次都會運行,這很好,但是DOM尚未加載,因此無法啓動我的jQuery插件。
每當組件完成轉換並且其DOM已準備就緒時,如何運行我的代碼?
問題是就緒方法只運行第一次組件加載,但如果我去另一條路線,然後我回到這個,準備方法不會運行。每當路線被調用時,我都需要它運行。 –
我剛剛更新了我的代碼示例;) – maoosi
我試圖訪問元素$('。test'),它存在於nextTick回調的組件dom中,我無法獲取它。它與setTimeout雖然工作,所以似乎dom尚未加載 –