代码拉取完成,页面将自动刷新
用于将form-generator导出的JSON解析成一个表单。
依赖于uview1.8组件库
npm i uniapp-form-generator-parser
或者
yarn add uniapp-form-generator-parser
示例代码:
因为uview表单验证number类型不通过验证,故修改了uview的一点源码组件(其实就是把组件$emit事件的值转化为String字符串类型)如下:
计数器组件:u-number-box 搜索
原来为:
this.emit('input',Number(value));
value:Number(value)
修改为:
this.emit('input', String(value));
value: String(value)
评分组件:u-rate 搜索
原来为:
this.emit('change',this.activeIndex)
this.emit('change',this.activeIndex)
this.emit('input', this.activeIndex)
修改为:
this.emit(′change′,String(this.activeIndex))
this.emit(′change′,String(this.activeIndex))
this.emit('input', String(this.activeIndex))
上传组件:u-upload 搜索 原来为:
this.showToast('超出允许的文件大小');
修改为: this.showToast(超出允许的文件大小${this.maxSize / 1024 /1024}M
);
表单组件:u-form-item搜索validation方法
在
// 检验之间,先获取需要校验的值
this.fieldValue = this.parent.model[this.prop];
之后加入
if(Array.isArray(this.fieldValue)){//如果是数组,转成字符串型通过验证
this.fieldValue = this.fieldValue.toString();
}
备注: 如果报错误TypeError: Cannot read property 'model' of undefined 尝试修改组件oFormParser里面setTimeout 延迟时间加长。
暂时仅支持微信小程序端
在node_modules\uview-ui\components
复制u-upload-enclosure文件夹
列如
源代码作者Mr.Liang
点击地址跳转
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。