ant-design-vue-pro icon indicating copy to clipboard operation
ant-design-vue-pro copied to clipboard

拉取最新的master代码,然后开启multiTab,控制台抛错:NavigationDuplicated: Avoided redundant navigation to current location

Open hegphegp opened this issue 4 years ago • 0 comments

  • 拉取最新的master代码,然后开启multiTab,控制台抛错:NavigationDuplicated: Avoided redundant navigation to current location
multiTab的配置如下
在 src/layouts/basiclayout.vue里<router-view /> 前添加 <multi-tab v-if="multiTab"></multi-tab>
然后引入组件
import MultiTab from '@/components/MultiTab'

  components: {
    SettingDrawer,
    RightContent,
    GlobalFooter,
    MultiTab//ADD it
  },

..........

  computed: {
    ...mapState({
      // 动态主路由
      mainMenu: (state) => state.permission.addRouters,
      multiTab: (state) => state.app.multiTab  //ADD it
    })
  },

然后在 config/defaultSettings.js加入一行 multiTab: true,
网上很多博客说添加下面代码可以解决这个问题,我发现项目本身就有下面配置,但是控制台还是抛错
//获取原型对象上的push函数
const originalPush = Router.prototype.push
//修改原型对象中的push方法
Router.prototype.push = function push(location) {
   return originalPush.call(this, location).catch(err => err)
}

image

hegphegp avatar Jun 17 '21 16:06 hegphegp