vue项目中某一页面不想引用公共组件app.vue解决办法
Vue 单页面应用 把公共组件放在 app.vue 但是我希望某个页面没有这些公共组件怎么办(比如登陆页面)每个页面都有 导航栏 但是我希望 登陆页面只有一个背景色和一个登陆框 没有导航栏 那应该怎样设置呢?vue中文文档:https://router.vuejs.org/zh/guide/essentials/dynamic-matching.html#%E5%93%8D%E5%BA%94%..
·
Vue 单页面应用 把公共组件放在 app.vue 但是我希望某个页面没有这些公共组件怎么办(比如登陆页面)每个页面都有 导航栏 但是我希望 登陆页面只有一个背景色和一个登陆框 没有导航栏 那应该怎样设置呢?
在根组件中:在导航栏使用v-show判断当前路由是否是不需要的组件来完成页面:
<template>
<div id="app">
<home-header v-show="!(path ==='/') "></home-header>
<home-aside v-show="!(path ==='/')"></home-aside>
<router-view/>
</div>
</template>
<script>
import HomeHeader from './components/header/Header'
import HomeAside from './components/aside/Aside'
export default {
name: 'App',
data(){
return{
path:''
}
},
components: {
HomeHeader,
HomeAside,
},
// 判断路由
mounted() {
this.path = this.$route.path;
// console.log(this.$route.path)
},
watch:{
$route(to,from){
this.path = to.path
}
}
}
</script>
<style>
</style>
在mounted(){}中使用this.path=当前页面的路由然后使用watch监测变化
更多推荐
已为社区贡献10条内容
所有评论(0)