解决vue项目中某一页面不想引用公共组件app.vue的问题


Posted in Javascript onAugust 14, 2020

Vue 单页面应用 把公共组件放在 app.vue 但是我希望某个页面没有这些公共组件怎么办(比如登陆页面)每个页面都有 导航栏 但是我希望 登陆页面只有一个背景色和一个登陆框 没有导航栏 那应该怎样设置呢?

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监测变化

补充知识:在app.vue里面注册的组件,然后想在首页不显示,需要怎样控制呢?vue切换路由的时候,在哪儿监控路由变化呢?

需求是这样的:

除了首页之外,每个页面上都要显示一个【返回的导航栏】。

那么问题来了,怎样控制首页返回导航栏的显示与隐藏呢。

思路:

在【返回的导航栏】组件里面,监听路由的变化,然后在监听里面进行判断即可。

代码:

<template>
 <div id="back" v-if="isShowBack">
  <div class="back_box" @click="toBack()">
   <span class="left_arrow">
    <img src="../../../static/images/icon_arrow_bottom_left.png" />
   </span>
  </div>
 </div>
</template>
 
<script>
 var that;
 export default {
  data() {
   return {
    msg: '',
    isShowBack:false
   }
  },
  methods: {
   toBack() {
    console.log('点击了返回')
    this.$router.go(-1);
   }
  },
  watch:{
   '$route':function(){
    that = this;
    console.log('watch里面',that.$route.name);
    if(that.$route.name == 'HomeNew'){
     that.isShowBack = false;
    }else{
     that.isShowBack = true;
    }
   }
  }
 }
</script>
 
<style scoped="scoped">
 .back_box {
  width: 100%;
  height: 30px;
  background: #f1f1f1;
 }
 
 .left_arrow {
  width: 22px;
  display: inline-block;
  transform: rotate(90deg);
  margin-top: 4px;
  margin-left: 4px;
 }
 
 .left_arrow img {
  width: 100%;
 }
</style>

------完。

以上这篇解决vue项目中某一页面不想引用公共组件app.vue的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery版Tab标签切换
Mar 16 Javascript
一款Jquery 分页插件的改造方法(服务器端分页)
Jul 11 Javascript
学习从实践开始之jQuery插件开发 对话框插件开发
Apr 26 Javascript
JavaScript高级程序设计 阅读笔记(十七) js事件
Aug 14 Javascript
JavaScript表达式:URL 协议介绍
Mar 10 Javascript
javascript级联下拉列表实例代码(自写)
May 10 Javascript
js右下角弹出提示框示例代码
Jan 12 Javascript
javascript自动切换焦点控制效果完整实例
Feb 02 Javascript
jquery文字填写自动高度的实现方法
Nov 07 Javascript
jQuery实现的简单在线计算器功能
May 11 jQuery
Vue 动态设置路由参数的案例分析
Apr 24 Javascript
微信小程序实现底部导航
Nov 05 Javascript
在vue中封装方法以及多处引用该方法详解
Aug 14 #Javascript
JS+css3实现幻灯片轮播图
Aug 14 #Javascript
浅谈vue获得后台数据无法显示到table上面的坑
Aug 13 #Javascript
vue 解决data中定义图片相对路径页面不显示的问题
Aug 13 #Javascript
解决vue net :ERR_CONNECTION_REFUSED报错问题
Aug 13 #Javascript
vue用elementui写form表单时,在label里添加空格操作
Aug 13 #Javascript
jQuery中event.target和this的区别详解
Aug 13 #jQuery
You might like
Laravel 5 框架入门(四)完结篇
2015/04/09 PHP
PHP使用FFmpeg获取视频播放总时长与码率等信息
2016/09/13 PHP
了解jQuery技巧来提高你的代码
2010/01/08 Javascript
5分钟理解JavaScript中this用法分享
2013/11/09 Javascript
jquery预览图片实现鼠标放上去显示实际大小
2014/01/16 Javascript
javascript面向对象之对象的深入理解
2015/01/13 Javascript
jQuery中$this和$(this)的区别介绍(一看就懂)
2015/07/06 Javascript
jquery用ajax方式从后台获取json数据后如何将内容填充到下拉列表
2015/08/26 Javascript
jQuery获取DOM节点实例分析(2种方式)
2015/12/15 Javascript
js判断上传文件后缀名是否合法
2016/01/28 Javascript
jQuery实现限制文本框的输入长度
2017/01/11 Javascript
JavaScript调试的多个必备小Tips
2017/01/15 Javascript
AngularJS使用angular.bootstrap完成模块手动加载的方法分析
2017/01/19 Javascript
Vue 2.x教程之基础API
2017/03/06 Javascript
微信小程序开发animation心跳动画效果
2017/08/16 Javascript
react-native使用leanclound消息推送的方法
2018/08/06 Javascript
electron实现qq快捷登录的方法示例
2018/10/22 Javascript
vue2.0自定义指令示例代码详解
2019/04/25 Javascript
如何利用JavaScript编写更好的条件语句详解
2020/08/10 Javascript
[00:56]PWL开团时刻DAY8——追追追追追!
2020/11/09 DOTA
Python random模块(获取随机数)常用方法和使用例子
2014/05/13 Python
python3设计模式之简单工厂模式
2017/10/17 Python
Python实现字符串匹配算法代码示例
2017/12/05 Python
Python 元类实例解析
2018/04/04 Python
Python基于百度AI的文字识别的示例
2018/04/21 Python
对python 匹配字符串开头和结尾的方法详解
2018/10/27 Python
python 实现矩阵填充0的例子
2019/11/29 Python
python如何代码集体右移
2020/07/20 Python
PyCharm最新激活码PyCharm2020.2.3有效
2020/11/18 Python
简单html5代码获取地理位置
2014/03/31 HTML / CSS
Lookfantastic美国/加拿大:英国知名美妆购物网站
2019/03/27 全球购物
民族团结先进集体事迹材料
2014/05/22 职场文书
2015年信访工作总结
2015/04/07 职场文书
2015年民主评议党员工作总结
2015/05/19 职场文书
Python激活Anaconda环境变量的详细步骤
2021/06/08 Python
python如何利用cv2.rectangle()绘制矩形框
2022/12/24 Python