我想在请求/url/confirm/
时显示模式。
这是迄今为止所做的:
// footer component
import Modal from '../Modal/Modal';
export default {
components: {Modal,},
data() {
return {
showModal: false,
};
},
mounted() {
if (window.location.href.match('/confirm/')) {
this.showModal = true;
}
},
};
// my main js
import MyFooter from './components/footer/MyFooter;
import router from './router';
new Vue({
el: '#app',
router,
components: {MyFooter, /* other components too */}
});
我结合这个https://router.vuejs.org/en/essentials/dynamic-matching.html#reacting-to-params-changes来涵盖所有用例?
这有效,但似乎不是一种做事的vue方式,特别是我在两个不同的文件中做同样的事情。
如何在vue中检测名称为/confirm/
的{{1}}路由,以便在我的组件页脚中显示模式?
答案 0 :(得分:2)
使用the route object(内部组件可用this.$route
):
if (this.$route.name == 'confirm') {
this.showModal = true;
}