JS增强api围绕着that关键词
JS增强定义的方法内可使用 that
关键字,该关键字指向当前页面的vue实例,那就意味着可以用that
调用任何当前页面的实例方法/属性
表单API列表
功能描述 | 语法 | 参数 |
---|---|---|
获取某下拉组件的下拉选项 | that.getSelectOptions(field) | field:字段名称 |
设置某下拉组件的下拉选项 | that.changeOptions(field,options) | field:字段名称 option:新设置的下拉选项 每一项由value和label组成 |
改变表单的值 | that.triggleChangeValues(param) | param:表单值对象,格式{控件名:控件值} |
进入表单页面立即触发change事件,需要在js增强中定义show方法, 给immediateEnhance赋值true | that.immediateEnhance = true | 当为true则,进入表单页若有change事件立即触发,否则不会,默认false |
获取当前表单数据 | 见下 | |
获取某个字段的值 | 见下 | |
修改某个字段的值 | 见下 | |
发起ajax请求 | getAction,postAction,deleteAction | 方法参数参考src/api/manage.js |
时间格式化 | that.simpleDateFormat(millisecond, format) | millisecond:毫秒数, format:yyyy-MM-dd hh:mm:ss 根据需求自定义格式 |
lodash | that.lodash.methodName | 具体使用什么工具方法参考lodash官方文档 |
表单事件方法
事件方法 | 描述 |
---|---|
show | 页面表单初始化时触发 |
loaded | 表单数据加载完成后触发 |
API代码
初始化表单方法
show(){
console.log('form',that)
//this.form.setFieldsValue({"name":"name值"})
that.$nextTick(() => {
//age是对应表的字段名
that.form.setFieldsValue({"age":"age值"})
});
}
修改字段值
字段采用online表单配置的字段英文名
that.triggleChangeValue("字段",“值”)
获取全部表单数据
let formData = that.form.getFieldsValue()
获取表单字段值
let sex = that.form.getFieldValue("sex")
字段值变更触发方法
ruz_date 是字段名字,所有的字段触发方法都统一写在方法onlChange里。 onlChange()方法必须与前一段代码有
回车
或者空格
,否则会报错。
onlChange(){
return {
ruz_date(){
let value = event.value
//alert('触发控件',value)
//根据入职日期,自动计算出入职年数
if(value!=null && value!=""){
let currDate = new Date(value.replace(/-/g, "\/"));
let d = new Date();
let ru_year_num = d.getFullYear()-currDate.getFullYear()
let values = {'ru_year_num':ru_year_num + 1}
that.triggleChangeValues(values)
}
}
}
}
修改表单字段下拉属性
that.changeOptions(field,options)
疑问:此方法能否涉及到 radio、select、搜索下拉等功能。
修改表下拉属性
示例
通过页面多个字段计算出某个字段的值
三级联动示例(ajax)
通过自定义button提交流程(侧重提交表单数据)
动态的控制字段组件的显示与隐藏
动态的控制字段组件是否禁用
//示例:调用simpleDateFormat格式化时间
show(){
console.log(that.simpleDateFormat(new Date().getTime(),'yyyy年MM月dd日 hh时mm分ss秒'));
}