vue-router跳转路由打开新窗口的方式(3-4版本都适用)

969 阅读1分钟

第一种

      const routeUrl = this.$router.resolve({
        path: "/targetUrl",
        query: { id: 96 },
      });
      window.open(routeUrl.href, "_blank");
    },

或者

const xj = () => {
  const c = router.resolve({
    path: "/login",
  });
  window.open(c.href, "_blank");
};

第二种

<router-link target="_blank" :to="{ path: '/catalog', query: { id: '1' } }">打开新的标签页</router-link>

如果通过iframe嵌入到其他系统中,这样打开新窗口,会丢掉iframe的壳子,出现有问题 需改为window.parent.open(routeUrl.href, “_blank”); 注意同源问题,需要解决

看这个作者的