VUE 动态组件的应用案例分析


Posted in Javascript onDecember 02, 2019

本文实例讲述了VUE 动态组件的应用。分享给大家供大家参考,具体如下:

业务场景

我们在开发表单的过程中会遇到这样的问题,我们选择一个控件进行配置,控件有很多中类型,比如文本框,下来框等,这些配置都不同,因此需要不同的配置组件来实现。

较常规的方法是使用v-if 来实现,这样界面看上去比较复杂,而且需要进行修改主页面。

解决方案

可以使用动态组件来实现,为了体现动态组件的特性,我们简化实现方式,编写两个简单的组件来测试一下这个功能。

文本组件配置:

<template>
 <div>
  我是单行文本框{{config.type}}
 </div>
</template>
<script>
 export default {
  name:"rx-textbox-config",
  props:{
   config:Object
  }
 }
</script>
<style>
</style>

这个组件我统一配置一个config 的对象属性,配置一个type 属性。

多行文本框配置:

<template>
 <div>
  我是多行文本框{{config.name}}
 </div>
</template>
<script>
 export default {
  name:"rx-textarea-config",
  props:{
   config:Object
  }
 }
</script>
<style>
</style>

这里我配置一个 name的属性。

在调用界面做写如下代码,导入组件

export default {
 name: 'App',
 components: {
  rxTextboxConfig,
  rxTextareaConfig,
 }

使用动态组件:

<component :is="currentConfig" :config="config"></component>

使用代码切换组件

this.currentConfig=ctlType +"-config";
if(ctlType=="rx-textbox"){
 this.config.type="VARCHAR";
}
if(ctlType=="rx-textarea"){
 this.config.name="我是富文本框";
}

这里写if 只是为了体现这个特性,实际实现不用这种方式。

希望本文所述对大家vue.js程序设计有所帮助。

Javascript 相关文章推荐
JS在IE和FF下attachEvent,addEventListener学习笔记
Nov 26 Javascript
javascript中callee与caller的用法和应用场景
Dec 08 Javascript
javascript中scrollTop详解
Apr 13 Javascript
向JavaScript的数组中添加元素的方法小结
Oct 24 Javascript
JavaScript的==运算详解
Jul 20 Javascript
Angular中使用ui router实现系统权限控制及开发遇到问题
Sep 23 Javascript
bootstrap侧边栏圆点导航
Jan 11 Javascript
vue实现添加标签demo示例代码
Jan 21 Javascript
详解微信第三方小程序代开发
Jun 23 Javascript
微信小程序自定义组件之可清除的input组件
Jul 17 Javascript
koa-router路由参数和前端路由的结合详解
May 19 Javascript
小程序server请求微信服务器超时的解决方法
May 21 Javascript
VUE 直接通过JS 修改html对象的值导致没有更新到数据中解决方法分析
Dec 02 #Javascript
vue 动态表单开发方法案例详解
Dec 02 #Javascript
vue 开发之路由配置方法详解
Dec 02 #Javascript
vue 开发企业微信整合案例分析
Dec 02 #Javascript
vue 使用外部JS与调用原生API操作示例
Dec 02 #Javascript
node使用mysql获取数据库数据中文乱码问题的解决
Dec 02 #Javascript
vue中上传视频或图片或图片和文字一起到后端的解决方法
Dec 01 #Javascript
You might like
php提取字符串中网站url地址的方法
2014/12/03 PHP
使用GD库生成带阴影文字的图片
2015/03/27 PHP
PHP使用http_build_query()构造URL字符串的方法
2016/04/02 PHP
[原创]PHP实现字节数Byte转换为KB、MB、GB、TB的方法
2017/08/31 PHP
PHP编程一定要改掉的5个不良习惯
2020/09/18 PHP
artDialog 4.1.5 Dreamweaver代码提示/补全插件 附下载
2012/07/31 Javascript
sencha touch 模仿tabpanel导航栏TabBar的实例代码
2013/10/24 Javascript
jQuery javaScript捕获回车事件(示例代码)
2013/11/07 Javascript
鼠标左键单击冲突的问题解决方法(防止冒泡)
2014/05/14 Javascript
仿JQuery输写高效JSLite代码的一些技巧
2015/01/13 Javascript
一款简单的jQuery图片标注效果附源码下载
2016/03/22 Javascript
JS常见简单正则表达式验证功能小结【手机,地址,企业税号,金额,身份证等】
2017/01/22 Javascript
解决JS内存泄露之js对象和dom对象互相引用问题
2017/06/25 Javascript
JavaScript之promise_动力节点Java学院整理
2017/07/03 Javascript
一个简易时钟效果js实现代码
2020/03/25 Javascript
chosen实现省市区三级联动
2018/08/16 Javascript
Vue一次性简洁明了引入所有公共组件的方法
2018/11/28 Javascript
基于Koa(nodejs框架)对json文件进行增删改查的示例代码
2019/02/02 NodeJs
小程序开发之模态框组件封装
2020/04/23 Javascript
微信小程序input抖动问题的修复方法
2021/03/03 Javascript
[01:15]PWL S2开团时刻第二期——他们杀 我就白给
2020/11/25 DOTA
[01:33]完美世界DOTA2联赛PWL S3 集锦第二期
2020/12/21 DOTA
[01:04:29]DOTA2-DPC中国联赛 正赛 Phoenix vs XG BO3 第二场 1月31日
2021/03/11 DOTA
python numpy格式化打印的实例
2018/05/14 Python
解决Python内层for循环如何break出外层的循环的问题
2019/06/24 Python
django使用admin站点上传图片的实例
2019/07/28 Python
django-初始配置(纯手写)详解
2019/07/30 Python
python每天定时运行某程序代码
2019/08/16 Python
Keras实现支持masking的Flatten层代码
2020/06/16 Python
Python3实现建造者模式的示例代码
2020/06/28 Python
Python sublime安装及配置过程详解
2020/06/29 Python
详解移动端h5页面根据屏幕适配的四种方案
2020/04/15 HTML / CSS
大学生创业策划书
2014/02/02 职场文书
大学生社会实践活动总结
2014/07/03 职场文书
python爬虫框架feapde的使用简介
2021/04/20 Python
Python中非常使用的6种基本变量的操作与技巧
2022/03/22 Python