• 页面刷新后如何保持引用的导航组件的选中样式(下划线,背景色)不被清除


    使用场景:用标签页或者第三方导航组件时当页面被刷新或重新年进入的时候,组件内data定义的状态值初始值会将选中的样式初始化

    更改后效果图:页面刷新后,下划线立即定位到当前页面的nav下

    解决思路:

    既然是由于页面加载时的初始状态中(data()中)的默认值造成影响,就可以在这个地方添加判断

    activeName: this.$route.path==='/page2'?'second':this.$route.path==='/page3'?'third':this.$route.path==='/page4'?'fourth':'first',     //解决方法
    <template>
        <div class="w1200 m-a flsb">
            <el-tabs v-model="activeName" @tab-click="handleClick" class="">
                <el-tab-pane label="用户管理" name="first"></el-tab-pane>
                <el-tab-pane label="配置管理" name="second"></el-tab-pane>
                <el-tab-pane label="角色管理" name="third"></el-tab-pane>
                <el-tab-pane label="定时任务补偿" name="fourth"></el-tab-pane>
            </el-tabs>
        </div>
    </template>
    
    <script>
    export default {
       data(){
           return{
    //activeName:“first” activeName:
    this.$route.path==='/page2'?'second':this.$route.path==='/page3'?'third':this.$route.path==='/page4'?'fourth':'first', //解决方法 } }, methods:{ handleClick(tab, event){ if(tab.name==='first'&&this.$route.path!='/page1') this.$router.push({path:'./page1'}) //避免路由重复进入 if(tab.name==='second'&&this.$route.path!='/page2') this.$router.push({path:'./page2'}) if(tab.name==='third'&&this.$route.path!='/page3') this.$router.push({path:'./page3'}) if(tab.name==='fourth'&&this.$route.path!='/page4') this.$router.push({path:'./page4'}) } } } </script> <style> .el-tabs__header{ margin-bottom: 1px; } </style>
     
  • 相关阅读:
    黑盒测试方法用例设计详解
    跨域
    HTTP Referer
    Java抽象类和接口
    深入理解Java垃圾回收机制
    Java异常处理机制
    hash
    JUint4的下载、配置及对一个算法编写单元测试用例(测试多组数据每组多个参数)
    get和post的区别
    Mac 文档阅读软件Dash软件破解版
  • 原文地址:https://www.cnblogs.com/wd163/p/14031431.html
Copyright © 2020-2023  润新知