- 描述: 在form表单进行validate验证的时候,每一项都填写正确,但是打印不到数据。
// 一定要记得在自定义验证规则的地方写callBack()
// 自定义验证规则
var checkProportion = (rule, value, callback) => {
const reg = /^[+]{0,1}(\d+)$/g;
if (value === '') {
return callback(new Error('请输入平台分成比例'));
} else if (!reg.test(value)) {
return callback(new Error('数值为正整数'));
} else if (value > 100) {
return callback(new Error('数值是0到100之间'));
}
// 就是这里!!!!!
callback();
};
- 描述: 后端返回的数据,需要前端进行判断展示,例如status: 0启用,1禁用,table数据直接被赋值tabData那种的。
<el-table-column prop="testState" label="考试状态">
<template slot-scope="scope">
<span :style="{color: scope.row.testState=='1' ? '#1677ff' : '#323233'}"> {{ scope.row.testState == '1' ? '正在进行' : (scope.row.testState == '2' ? '已结束':'未开始') }} </span>
</template>
</el-table-column>
- watch如何监听对象的某一个属性。
revenueForm: {
creatorProportion: '',
proportion: ''
}
watch: {
'revenueForm.creatorProportion': {
handler(val) {
this.revenueForm.proportion = (100 - val);
}
}
}
- 表单在关闭之后,内容置空
<el-form ref="revenueForm">
<el-form-item></el-form-item>
</el-form>
this.$refs['revenueForm'].resetFields();
5.点击'编辑'按钮,对象某些的值需删除(delete),然后赋值给form表单
// 编辑赋值
editRowData(val, oldVal) {
if (this.operateType === 'edit') {
delete val.zip;
delete val.createPeople;
console.log(val, '这是form');
// 后面的val 覆盖前面的值
Object.assign(this.revenueForm, val);
console.log(this.revenueForm, '1111111');
}
}
- 给对象添加属性和值
// 使用set方法动态添加对象属性值
this.$set(this.creatorLevels, item.value, item.description);// 对象名,该对象属性,该对象该属性值
- 一直好奇项目中的this.message
// 看官方文档
Element 为 Vue.prototype 添加了全局方法 $message。因此在 vue instance 中可以采用本页面中的方式调用 Message。
- 表单编辑或添加的时候,关闭form遇到的问题
// 先后顺序不能颠倒,若颠倒,表格数据不刷新(列表接口请求了 后端返的数据还是修改之前的数据 强制刷新 列表才会更改,具体原因在想)
this.$emit('update:addOrEditActivityVisible', false);
this.$refs['form'].resetFields();