鍍金池/ 問答/HTML/ vue Element-UI 菜單導航 ,默認激活狀態(tài),刷新后才有,怎么回事?

vue Element-UI 菜單導航 ,默認激活狀態(tài),刷新后才有,怎么回事?

圖片描述a.我是用vuex做的。
b.在路由攔截里去改變default-active的值。
c.導航菜單里取到這個路徑。
理論上是沒問題的,但是?。。?br>刷新后,當前頁面才有選中狀態(tài)。直接點擊菜單沒有選中狀態(tài)。
具體代碼
1.store里

 leftNavState: (state, data) => {
    state.leftSelect = data;
},

2.路由攔截里

store.commit('leftNavState',to.path);

3.導航菜單組件里

    <el-menu :default-active="leftSelect" class="leftMenue" router>
        <el-menu-item :index="item.path" v-for="(item, index) in leftNav" :key="index">
            <i class="iconfont" :class="item.icon"></i>
            <span slot="title">{{item.name}}</span>
        </el-menu-item>
    </el-menu>
    
    ...mapState(['leftSelect']),
    ...mapGetters(['leftNav'])

回答
編輯回答
愛是癌

watch你的路由,然后設(shè)置:default-active

2017年4月6日 02:12
編輯回答
負我心

建議使用 watch 選項檢測你的 leftSelect

watch: {
    leftSelect: (newValue, oldValue) => {
        ...
    } 
}
2018年4月22日 02:10
編輯回答
陪她鬧

謝謝給位回答。問題找到了。希望問題對其他人有幫助。
解決辦法:watch里暴力操作ref。

    setTimeout(()=> {
        this.$refs.leftMenue.activeIndex = to.path;
    },100);
    注意  :定時器很重要!?。。。?/code>
2018年6月30日 17:16