博客
关于我
vue用component动态组件的方式,实现加载组件,类似tab栏的效果
阅读量:681 次
发布时间:2019-03-17

本文共 781 字,大约阅读时间需要 2 分钟。

在项目开发过程中,当我们需要干预组件化管理时,会涉及到多个步骤来实现组件的复用和动态加载。本节将详细讲解如何实现一个有条件组件切换的灵活应用方案。

第一步,我们需要在父组件中正式引入我们需要加载和展示的子组件。具体来说,我们会在父组件的文件中加入以下内容:

在这个代码片段中,我们从项目路径中导入了两个子组件:service以及event。随后,我们将这些组件注册至父组件中,这样我们才能在父组件的HTML模板中简单地引用它们。

在HTML页面中,初步的绘制工作也需要完成。我们需要设置一个包含切换按钮的区域,使用户可以通过点击切换查看不同的组件展示。基本结构如下:

在这部分代码中,我们创建了两个切换按钮,分别点击后会触发切换不同的子组件展示。同时,我们还准备了一个动态组件引用区域,用于展示当前切换的子组件内容。

接下来,我们需要对数据进行适当的初始化设置。从父组件的数据部分,可以看到以下内容:

我们可以看到,父组件默认展示的是service组件。同时,changeActive字段初始设置为空,稍后将在切换逻辑中用于判断当前处于哪个状态。

在组件切换逻辑上,我们需要编写一个函数用来处理切换操作。函数定义如下:

toggleTab(tab, number) {  console.log(tab); // 输出切换的组件名称  console.log(number); // 输出切换的编号  this.changeActive = number;  this.cut = tab;}

这个函数通过接受两个参数(组件名称和切换编号)来实现逻辑判断和状态更新。changeActive字段会根据当前切换编号更新,cut字段则将设置为当前要展示的子组件名称,这样动态组件就可以正确展示对应的子组件内容。

转载地址:http://rywhz.baihongyu.com/

你可能感兴趣的文章
OpenLayers 项目分析(三)-OpenLayers中定制JavaScript内置类
查看>>
Openlayers中使用Cluster实现点位元素重合时动态聚合与取消聚合
查看>>
Openlayers中使用Cluster实现缩放地图时图层聚合与取消聚合
查看>>
Openlayers中使用Image的rotation实现车辆定位导航带转角(判断车辆图片旋转角度)
查看>>
Openlayers中加载Geoserver切割的EPSG:900913离线瓦片图层组
查看>>
Openlayers中将某个feature置于最上层
查看>>
Openlayers中点击地图获取坐标并输出
查看>>
Openlayers中设置定时绘制和清理直线图层
查看>>
Openlayers图文版实战,vue项目从0到1做基础配置
查看>>
Openlayers实战:modifystart、modifyend互动示例
查看>>
Openlayers实战:判断共享单车是否在电子围栏内
查看>>
Openlayers实战:绘制图形,导出geojson文件
查看>>
Openlayers实战:绘制图形,导出KML文件
查看>>
Openlayers实战:绘制多边形,导出CSV文件
查看>>
Openlayers实战:绘制带箭头的线
查看>>
Openlayers实战:输入WKT数据,输出GML、Polyline、GeoJSON格式数据
查看>>
Openlayers高级交互(10/20):绘制矩形,截取对应部分的地图并保存
查看>>
Openlayers高级交互(11/20):显示带箭头的线段轨迹,箭头居中
查看>>
Openlayers高级交互(14/20):汽车移动轨迹动画(开始、暂停、结束)
查看>>
Openlayers高级交互(15/20):显示海量多边形,10ms加载完成
查看>>