1、close-on-click-modal,使用的时候注意是要绑定该属性
<el-dialog
title="上传"
:close-on-click-modal="false"
>
</el-dialog>
解释:如果值为true,表示可以通过点击空白的地方关闭该弹出框;为false就不可以
2、el-form ref用于获取当前的DOM元素
<el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="100px" class="demo-ruleForm">
<el-form-item label="活动名称" prop="name">
<el-input v-model="ruleForm.name"></el-input>
</el-form-item>
</el-form>
我们在 rules 这里写了对表单的验证规则,但是我们如何在 methods 里进行指定的表单进行认证,所以我们一开始就在 el-form 里写了 ref=”ruleForm”,我们在 methods 里就可以用 this.$refs.ruleForm.validate((valid) => {} 这样的方法对指定的表单根据你写的 rules 认证。
3、package.json里面的name值不能和你将要安装的包的名称一样 比如:name值为express,然后你安装npm install express --save就会报错
4、element下拉框的值选不进去,解决办法:
<el-form :model="planUser" label-position="left" inline class="demo-table-expand dialog-expand">
<el-form-item label="用传编码:" v-show="!inputVisible" :label-width="formLabelWidth" :rules="{
required: true, message: '用传编码不能为空', trigger: 'blur'}">
<el-select v-model.trim="planUser.controlHost" filterable placeholder="用传编码">
<el-option v-for="(item,index) in controlHostList" :key="index" :label="item" :value="item">
</el-option>
</el-select>
</el-form-item>
</el-form>
planUser:{
bindControlHost:'',
controlHost:''
},
绑定model,然后在data里面写上
5、Element form表单方法resetFields无效 重置的时候,所属运营中心重置不掉,原因是prop未定义
源码的form-item在mounted的时候是这么写的:
mounted() {
if (this.prop) {
this.dispatch('ElForm', 'el.form.addField', [this]);
let initialValue = this.fieldValue;
if (Array.isArray(initialValue)) {
initialValue = [].concat(initialValue);
}
Object.defineProperty(this, 'initialValue', {
value: initialValue
});
this.addValidateEvents();
}
},
可以看到整个mounted操作都是基于你定义了prop才可以的,之后就是定义一个initialValue初始值,使用Object.defineProperty来定义默认是不可修改的,加writable属性值才能修改,并且放到this下,然后执行resetFields时把值变成初始值,所以以后需要清空表单,又不想手动清空的那么prop是必须要定义了