@thtf/wj-designer
v0.0.22
Published
### 依赖
Downloads
8
Readme
同方问卷设计器
依赖
Vue 2.6.14+
Element-UI 2.15.8+
安装
npm install @thtf/wj-designer
快速上手
<wj-designer
style="height: 100vh"
/>
// 引用
import WjDesigner from '@thtf/wj-designer'
// 注册
Vue.use(WjDesigner)
属性
| 参数 | 说明 | 类型 | 可选值 | 默认值 | | --------------- | -------------- | ------- | ------------------------------------- | -------------------------------------- | | modelType | 模式 | Number | 0:设计 1:再设计 2:填报 3:只读 4:预览 | 0 | | formJSON | 表样数据 | Object | —— | {} | | fillJSON | 填报数据 | Object | —— | {} | | regionsApiUrl | 省市区接口地址 | String | —— | '' | | cityId | 省市 id | String | —— | '' | | areaId | 省市区 id | String | —— | '' | | validateObj | 校验对象 | Object | —— | {} | | cityArray | 原始省市数据 | Array | —— | [] | | areaArray | 原始省市区数据 | Array | —— | [] | | showSubmit | 显示提交按钮 | Boolean | —— | true | | showHold | 显示暂存按钮 | Boolean | —— | false | | submitTxt | 提交按钮文字 | String | —— | 提交 | | stripe | 斑马条纹 | Boolean | —— | true | | fileUploadApi | 上传文件接口 | Promise | —— | | | fileDeleteApi | 上传删除接口 | Promise | —— | | | baseUrl | 文件下载前缀 | String | —— | '' | | designDialogObj | 弹框属性对象 | Object | —— | {center: true,closeOnClickModal: true} |
事件
| 事件名称 | 说明 | 回调参数 | | -------------- | -------- | --------------------- | | designSubmit | 表样提交 | 表样数据: formJSON | | submit | 表单提交 | 填报数据: fillJSON | | hold | 暂存 | 填报数据:fillJSON | | validate | 表单校验 | 1:校验未通过 | | repeatValidate | 重复判断 | 校验对象:validateObj | | onCamera | 点击拍照 | 控件 id |
传入校验对象
let validateObj = {
id: '',
isRepeat: false,
};
传出校验对象
let validateObj = {
formId: '',
id: '',
type: '',
value: '',
};
接口所需校验对象
let validateObj = {
// 表单id
formId: '',
// 表单题目列表
subjectList: {
// 普通题id
subjectId: [
{
// 题目选项或填空控件对应的id
valueId: '',
// 题目选项或填空的值
value: '',
},
],
},
};
方法
| 方法名 | 说明 | 参数 | | ------------- | ------------ | ---- | | emitSubmit | 提交表单 | - | | emitHold | 暂存 | - | | setCameraPath | 设置照片路径 | - |
发布流程
- 编译代码
npm run build
- 登录(登录过可忽略)
npm login
- 发布
npm publish
启动项目时,如因eslint报错无法启动,如没时间解决可以通过在 .elintignore 文件中加入如下代码,暂时解决,切记不要提交该文件
/src
/packages