vue 中 命名视图的用法实例详解


Posted in Javascript onAugust 14, 2019

今天主要记录  vue中命名视图的用法

先奉上官网网址:https://router.vuejs.org/zh/guide/essentials/named-views.html

一般情况下,一个页面里面可能有多个组件,比如侧边栏,内容区,侧边栏是一个组件、内容区是一个组件,我们普遍会将两个组件作为子组件添加到主页面中,因为页面中只有一个

router-view视图,那么问题来了,怎么让一个页面中有多个视图呢,拥有多个视图,很随意,多写几个router-view标签就行了,但是每个router-view视图里面显示的相同的内容,这是一个问题,多写几个视图好像没什么用,那么怎么让一个页面中的多个视图显示不同的内容呢?

下面就来介绍命名视图的作用,首先,一般情况下,我们在路由配置中,一个路由路径只能对应一个组件,若想对应多个组件,必须得作为子组件存在,然后再一个公用的视图内显示,这是一个路由对应多个组件,这些组件对应一个视图

例如:

{
path:'tv',

name:'tv',

component:Tv,

children:[


{path:'',component:Zhonghe},


{path:'zhonghe',component:Zhonghe},


{path:'guochan',component:Guochan},


{path:'yingmei',component:Yingmei},


{path:'riju',component:Riju},


{path:'hanju',component:Hanju}

]
},

那么,下面来介绍命名视图:有时候想同时 (同级) 展示多个视图,而不是嵌套展示,例如创建一个布局,有 sidebar (侧导航) 和 main (主内容) 两个视图,这个时候命名视图就派上用场了。你可以在界面中拥有多个单独命名的视图,而不是只有一个单独的出口。如果 router-view 没有设置名字,那么默认为 default。

<router-view class="view one"></router-view>
<router-view class="view two" name="a"></router-view>
<router-view class="view three" name="b"></router-view>

一个视图使用一个组件渲染,因此对于同个路由,多个视图就需要多个组件。确保正确使用 components配置 (带上 s):

const router = new VueRouter({
 routes: [
  {
   path: '/',
   components: {
    default: Foo,
    a: Bar,
    b: Baz
   }
  }
 ]
})

解释一下:

在这个默认路由下,

第一个非未命名视图显示Foo组件

第二个name名为a的视图显示Bar组件

第二个name名为b的视图显示Baz组件

然后自己有些了个demo

<template>
<div class="hello">


<ul class="nav">



<li><router-link to="/list1">list1</router-link></li>



<li><router-link to="/list2">list2</router-link></li>



<li><router-link to="/list3">list3</router-link></li>


</ul>


<h6>默认视图</h6>


<div class="view">



<router-view></router-view>


</div>


<h6>a视图</h6>


<div class="view">



<router-view name="a"></router-view>


</div>


<h6>b视图</h6>


<div class="view">



<router-view name="b"></router-view>


</div>

</div>
</template>

router配置:

routes: [
{


path: '/',


name: 'HelloWorld',


component: HelloWorld,


children:[



{




path:'',




components:{





default:List1,





a:List2,





b:List3




}



},



{




path:'list1',




components:{





default:List1,





a:List2,





b:List3




}



 },



 {




path:'list2',




components:{





default:List2,





a:List1,





b:List3




}



},



{




path:'list3',




components:{





default:List3,





a:List1,





b:List2




}



}


]

}
]

这样会让也面很灵活,可以研究一下

总结

以上所述是小编给大家介绍的vue 中 命名视图的用法 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
jquery Firefox3.5中操作select的问题
Jul 10 Javascript
跨域请求之jQuery的ajax jsonp的使用解惑
Oct 09 Javascript
Three.js源码阅读笔记(基础的核心Core对象)
Dec 27 Javascript
AngularJS  双向数据绑定详解简单实例
Oct 20 Javascript
js canvas仿支付宝芝麻信用分仪表盘
Nov 16 Javascript
JS实现给对象动态添加属性的方法
Jan 05 Javascript
JavaScript中Object基础内部方法图
Feb 05 Javascript
vue中倒计时组件的实例代码
Jul 06 Javascript
vuex 中插件的编写案例解析
Jun 10 Javascript
详解json串反转义(消除反斜杠)
Aug 12 Javascript
vue组件中节流函数的失效的原因和解决方法
Dec 02 Vue.js
el-table-column 内容不自动换行的解决方法
Aug 14 Vue.js
详解vue 命名视图
Aug 14 #Javascript
浅谈JS中this在各个场景下的指向
Aug 14 #Javascript
Vue路由模块化配置的完整步骤
Aug 14 #Javascript
微信公众号平台接口开发 获取access_token过程解析
Aug 14 #Javascript
解决vue中使用proxy配置不同端口和ip接口问题
Aug 14 #Javascript
websocket4.0+typescript 实现热更新的方法
Aug 14 #Javascript
利用JavaScript的Map提升性能的方法详解
Aug 14 #Javascript
You might like
php 验证码(倾斜,正弦干扰线,黏贴,旋转)
2013/06/29 PHP
javascript验证上传文件的类型限制必须为某些格式
2013/11/14 Javascript
js Date概念详细介绍
2013/11/22 Javascript
jQuery 鼠标经过(hover)事件的延时处理示例
2014/04/14 Javascript
浅谈Javascript变量作用域问题
2014/12/16 Javascript
jQuery中unwrap()方法用法实例
2015/01/16 Javascript
JavaScript+html5 canvas制作色彩斑斓的正方形效果
2016/01/27 Javascript
浅谈angularjs依赖服务注入写法的注意点
2017/04/24 Javascript
JavaScript继承与聚合实例详解
2019/01/22 Javascript
如何用vue-cli3脚手架搭建一个基于ts的基础脚手架的方法
2019/12/12 Javascript
Python中逗号的三种作用实例分析
2015/06/08 Python
python妙用之编码的转换详解
2017/04/21 Python
Python内置函数 next的具体使用方法
2017/11/24 Python
Python语言描述连续子数组的最大和
2018/01/04 Python
pip matplotlib报错equired packages can not be built解决
2018/01/06 Python
Python Opencv任意形状目标检测并绘制框图
2019/07/23 Python
python爬虫 线程池创建并获取文件代码实例
2019/09/28 Python
Python大数据之从网页上爬取数据的方法详解
2019/11/16 Python
pytorch 实现打印模型的参数值
2019/12/30 Python
TensorFlow tensor的拼接实例
2020/01/19 Python
解决tensorflow添加ptb库的问题
2020/02/10 Python
python openpyxl模块的使用详解
2021/02/25 Python
Adobe Html5 Extension开发初体验图文教程
2017/11/14 HTML / CSS
html5利用canvas实现颜色容差抠图功能
2019/12/23 HTML / CSS
Marlies Dekkers内衣荷兰官方网店:荷兰奢侈内衣品牌
2020/03/27 全球购物
编写strcpy函数
2014/06/24 面试题
土木工程毕业生自荐信
2013/11/12 职场文书
德育标兵事迹材料
2014/08/24 职场文书
党员剖析材料范文
2014/12/18 职场文书
小学生2015教师节演讲稿
2015/03/19 职场文书
有关水浒传的读书笔记
2015/06/25 职场文书
小学二年级班主任工作经验交流材料
2015/11/02 职场文书
2019学子的答谢词范本!
2019/07/05 职场文书
宪法宣传标语100条
2019/10/15 职场文书
高端收音机+蓝牙音箱,JBL TUNER FM带收音蓝牙音箱评测
2021/04/24 无线电
MySQL数据库表约束讲解
2022/06/21 MySQL