使用form-create动态生成vue自定义组件和嵌套表单组件


Posted in Javascript onJanuary 18, 2019

使用form-create动态生成vue自定义组件和嵌套表单组件

[github]| [说明文档]

maker.create

通过建立一个虚拟 DOM的方式生成自定义组件

生成

Maker

let rule = [
 formCreate.maker.create('i-button').props({
  type:'primary',
  field:'btn'
  loading:true
 })
]
$f = formCreate.create(rule);

上面的代码是通过maker生成器动态生成一个正在加载的iview按钮组件

Json

let rule = [
 {
  type:'i-button',
  field:'btn'
  props:{
    type:'primary',
    field:'btn',
    loading:true
  }
 }
]
$f = formCreate.create(rule);

上面的代码是通过json方式动态生成一个iview按钮组件

修改

可以通过一下两种方式动态修改组件的配置项

通过rule修改组件生成规则

rule[0].props.loading = false;

通过$f.component()方法获取组件的生成规则并修改

$f.component().btn.props.loading = false;

示例

使用form-create动态生成vue自定义组件和嵌套表单组件

let rule = [
 {
  type:'row',
  children:[
   {
    type:'i-col',
    props:{
     span:12
    },
    children:[
     formCreate.maker.input('商品名称','goods_name','iphone'),
     formCreate.maker.number('商品加个','goods_price',8688)
    ]
   },
   {
    type:'i-col',
    props:{
     span:12
    },
    children:[
     formCreate.maker.dateTime('创建时间','create_at'),
     formCreate.maker.radio('是否显示','is_show').options([
      {value:1,label:'显示'},
      {value:0,label:'不显示'}
     ])
    ]
   }
  ]
 }
]

maker.template

通过模板的方式生成自定义组件,maker.createTmp方法是该方法的别名

生成

Maker

let rule = [
 formCreate.maker.template('<i-button :loading="loading">{{text}}<i-button>',new Vue({
  data:{
   loading:true,
   text:'正在加载中...'
  }
 }))
]

上面的代码是通过maker生成器动态生成一个正在加载的iview按钮组件

Json

let rule = [
 {
  type:'template',
  template:'<i-button :loading="loading">{{text}}<i-button>',
  vm:new Vue({
   data:{
    loading:true,
    text:'正在加载中'
   }
  })
 }
]
$f = formCreate.create(rule);

上面的代码是通过Json方式动态生成一个iview按钮组件

修改

可以通过一下两种方式动态修改vm组件内部的值

通过rule获取自定义组件的vm并修改

rule[0].vm.text = '加载完毕';
rule[0].vm.loading = false;

通过$f.component()方法获取自定义组件的vm并修改

$f.component().btn.vm.text = '加载完毕';
$f.component().btn.vm.loading = false;

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript 树控件 比较好用
Jun 11 Javascript
深入理解javaScript中的事件驱动
May 21 Javascript
20分钟成功编写bootstrap响应式页面 就这么简单
May 12 Javascript
JS中页面与页面之间超链接跳转中文乱码问题的解决办法
Dec 15 Javascript
JS实现类似百叶窗下拉菜单效果
Dec 30 Javascript
微信小程序页面间通信的5种方式
Mar 31 Javascript
详解如何在 vue 项目里正确地引用 jquery 和 jquery-ui的插件
Jun 01 jQuery
详解webpack2+React 实例demo
Sep 11 Javascript
AngularJS实现与后台服务器进行交互的示例讲解
Aug 13 Javascript
4个顶级开源JavaScript图表库
Sep 29 Javascript
layui 数据表格 点击分页按钮 监听事件的实例
Sep 02 Javascript
解决vue单页面多个组件嵌套监听浏览器窗口变化问题
Jul 30 Javascript
jquery层次选择器的介绍
Jan 18 #jQuery
js实现图片放大并跟随鼠标移动特效
Jan 18 #Javascript
vue.js的双向数据绑定Object.defineProperty方法的神奇之处
Jan 18 #Javascript
jQuery无冲突模式详解
Jan 17 #jQuery
JQuery判断radio单选框是否选中并获取值的方法
Jan 17 #jQuery
React性能优化系列之减少props改变的实现方法
Jan 17 #Javascript
vue 项目接口管理的实现
Jan 17 #Javascript
You might like
老机欣赏|中国60年代精品收音机
2021/03/02 无线电
PHP 遍历XP文件夹下所有文件
2008/11/27 PHP
优化php效率,提高php性能的一些方法
2011/03/24 PHP
php object转数组示例
2014/01/15 PHP
Yii配置与使用memcached缓存的方法
2016/07/13 PHP
PHP封装的验证码工具类定义与用法示例
2018/08/22 PHP
php session_decode函数用法讲解
2019/05/26 PHP
cookie丢失问题(认证失效) Authentication (用户验证信息)也会丢失
2009/06/04 Javascript
jQuery dialog 异步调用ashx,webservice数据的代码
2010/08/03 Javascript
JavaScript伸缩的菜单简单示例
2013/12/03 Javascript
在AngularJS应用中实现一些动画效果的代码
2015/06/18 Javascript
jquery.tableSort.js表格排序插件使用方法详解
2020/08/12 Javascript
创建简单的node服务器实例(分享)
2017/06/23 Javascript
基于vue2.0的活动倒计时组件countdown(附源码下载)
2018/10/09 Javascript
微信小程序事件流原理解析
2019/11/27 Javascript
微信小程序图片自适应实现解析
2020/01/21 Javascript
Django集成百度富文本编辑器uEditor攻略
2014/07/04 Python
Python实现的科学计算器功能示例
2017/08/04 Python
Python实现按学生年龄排序的实际问题详解
2017/08/29 Python
python构建基础的爬虫教学
2018/12/23 Python
python实现年会抽奖程序
2019/01/22 Python
python文字和unicode/ascll相互转换函数及简单加密解密实现代码
2019/08/12 Python
Python list与NumPy array 区分详解
2019/11/06 Python
python3 常见解密加密算法实例分析【base64、MD5等】
2019/12/19 Python
Django 路由层URLconf的实现
2019/12/30 Python
tensorflow 实现从checkpoint中获取graph信息
2020/02/10 Python
基于Python绘制个人足迹地图
2020/06/01 Python
python 5个顶级异步框架推荐
2020/09/09 Python
python用分数表示矩阵的方法实例
2021/01/11 Python
html5 canvas绘制网络字体的常用方法
2019/08/26 HTML / CSS
如何进行有效的自我评价
2013/09/27 职场文书
民主生活会批评与自我批评总结
2014/10/17 职场文书
学习保证书怎么写
2015/02/26 职场文书
2015年高中生国庆节演讲稿
2015/07/30 职场文书
2016年全国助残日活动总结
2016/04/01 职场文书
七年级作文之秋游
2019/10/21 职场文书