Vue-Router:$router.go(-1) 在 Safari 中不起作用
Vue-Router: $router.go(-1) doesn't work in Safari
我在 App.vue
中有以下设置:
<top-nav></top-nav>
<main>
<router-view v-bind="{isOnline}"></router-view>
</main>
并且在 top-nav
的 js 中我有 goBack
方法:
methods: {
goBack() {
this.$router.go(-1);
},
...
},
这在 Chrome 和 Internet Explorer 中运行良好,但在 Safari 中运行不佳。在该 .go(-1)
行上调试和设置断点时,它会遇到断点并且一切看起来都很好(没有未定义的)。导航调用尚未完成。
这不适用于移动设备和桌面设备。我以为 Safari 支持历史 API?
我发现我用来返回的图标被包裹在一个设置了 href
属性的锚标签中。
<a v-if="showBackButton" href="#" @click="goBack">
<i class="icon icon-200-chevron-left-small"></i>
<p>back</p>
</a>
解决方案:
将锚标记更改为 span 或其他内容,当然还要删除 href 属性。
我在 App.vue
中有以下设置:
<top-nav></top-nav>
<main>
<router-view v-bind="{isOnline}"></router-view>
</main>
并且在 top-nav
的 js 中我有 goBack
方法:
methods: {
goBack() {
this.$router.go(-1);
},
...
},
这在 Chrome 和 Internet Explorer 中运行良好,但在 Safari 中运行不佳。在该 .go(-1)
行上调试和设置断点时,它会遇到断点并且一切看起来都很好(没有未定义的)。导航调用尚未完成。
这不适用于移动设备和桌面设备。我以为 Safari 支持历史 API?
我发现我用来返回的图标被包裹在一个设置了 href
属性的锚标签中。
<a v-if="showBackButton" href="#" @click="goBack">
<i class="icon icon-200-chevron-left-small"></i>
<p>back</p>
</a>
解决方案:
将锚标记更改为 span 或其他内容,当然还要删除 href 属性。