<el-form-item label="业务名称" prop="apis"> <el-cascader style="width: 100%" :options="apis | removeNullList('children')" :props="{ multiple: true, children: 'children', value: 'api', label: 'name', emitPath: false, }" clearable > </el-cascader> </el-form-item> 什么意思
时间: 2024-02-10 19:30:08 浏览: 138
这是一个基于 ElementUI 组件库实现的表单项,用于显示和编辑“业务名称”属性。它包含一个级联选择器,可以选择多个选项,并且每个选项都有一个对应的 API 接口。选择器的选项和选中的值是由 `apis` 变量控制的,其中 `removeNullList` 是一个自定义过滤器,用于去除空列表。`props` 属性中设置了级联选择器的一些参数,例如允许选择多个选项、子节点的属性名、选项值的属性名、选项标签的属性名等。`clearable` 属性表示是否显示清除按钮。
相关问题
<el-card > <div class="person"> <div class="left"> <el-image :src="userInfo.imageUrl" style="width: 300px;height: 300px"></el-image> </div> <div class="right"> <el-form :model="userInfo" :rules="rule" ref="formRef" @keyup.enter.native="formSubmitHandle()" label-width="100px"> <el-form-item label="用户名" prop="userName"> <el-input v-model="userInfo.userName" placeholder="用户名"></el-input> </el-form-item> <el-form-item label="密码" prop="password"> <el-input v-model="userInfo.password" placeholder="密码"></el-input> </el-form-item> <el-form-item label="姓名" prop="realName"> <el-input v-model="userInfo.realName" placeholder="姓名"></el-input> </el-form-item> <el-form-item label="联系方式" prop="phone"> <el-input v-model="userInfo.phone" placeholder="联系方式"></el-input> </el-form-item> <el-form-item label="性别" prop="sex">
### Element UI `el-card` 和 `el-form` 的示例代码及配置方法
#### 1. `el-card` 配置与使用
`el-card` 是 Element UI 提供的一个卡片容器组件,用于展示一组相关内容。其基本结构如下:
```html
<template>
<el-card class="box-card">
<div slot="header" class="clearfix">
<span>卡片名称</span>
<el-button style="float: right; padding: 3px 0" type="text">操作按钮</el-button>
</div>
<div v-for="o in 4" :key="o" class="text item">
{{'列表内容 ' + o }}
</div>
</el-card>
</template>
<script>
export default {
name: 'CardExample'
};
</script>
<style scoped>
.text {
font-size: 14px;
}
.item {
margin-bottom: 18px;
}
.clearfix:before,
.clearfix:after {
display: table;
content: "";
}
.clearfix:after {
clear: both;
}
.box-card {
width: 480px;
}
</style>
```
此代码展示了如何创建一个带有头部和主体的卡片[^1]。
---
#### 2. `el-form` 配置与使用
`el-form` 是 Element UI 中用来构建表单的核心组件,支持数据绑定、验证等功能。以下是完整的示例代码及其解释:
##### 基本模板
```html
<template>
<el-form
:model="ruleForm"
:rules="rules"
ref="ruleForm"
label-width="100px"
class="demo-ruleForm"
>
<!-- 字段:用户名 -->
<el-form-item label="用户名" prop="username">
<el-input v-model="ruleForm.username"></el-input>
</el-form-item>
<!-- 字段:密码 -->
<el-form-item label="密码" prop="password">
<el-input type="password" v-model="ruleForm.password"></el-input>
</el-form-item>
<!-- 提交按钮 -->
<el-form-item>
<el-button type="primary" @click="submitForm('ruleForm')">提交</el-button>
<el-button @click="resetForm('ruleForm')">重置</el-button>
</el-form-item>
</el-form>
</template>
<script>
export default {
data() {
return {
ruleForm: {
username: '',
password: ''
},
rules: {
username: [
{ required: true, message: '请输入用户名', trigger: 'blur' }
],
password: [
{ required: true, message: '请输入密码', trigger: 'blur' },
{ min: 6, max: 12, message: '长度应在 6 到 12 个字符之间', trigger: 'blur' }
]
}
};
},
methods: {
submitForm(formName) {
this.$refs[formName].validate(valid => {
if (valid) {
alert('提交成功!');
} else {
console.log('错误的提交!!');
return false;
}
});
},
resetForm(formName) {
this.$refs[formName].resetFields();
}
}
};
</script>
```
在此示例中:
- `:model` 属性绑定了表单的数据对象。
- `:rules` 定义了字段的校验规则。
- `$refs` 被用来访问表单实例并执行校验或重置功能[^2]。
---
#### 3. 结合 `el-card` 和 `el-form`
如果希望在一个卡片中嵌入表单,则可以将两者结合起来:
```html
<template>
<el-card class="box-card">
<div slot="header" class="clearfix">
<span>登录表单</span>
</div>
<el-form
:model="loginForm"
:rules="loginRules"
ref="loginForm"
label-width="100px"
class="demo-loginForm"
>
<el-form-item label="用户名" prop="username">
<el-input v-model="loginForm.username"></el-input>
</el-form-item>
<el-form-item label="密码" prop="password">
<el-input type="password" v-model="loginForm.password"></el-input>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="handleSubmit('loginForm')">登录</el-button>
<el-button @click="handleReset('loginForm')">重置</el-button>
</el-form-item>
</el-form>
</el-card>
</template>
<script>
export default {
data() {
return {
loginForm: {
username: '',
password: ''
},
loginRules: {
username: [{ required: true, message: '请输入用户名', trigger: 'blur' }],
password: [
{ required: true, message: '请输入密码', trigger: 'blur' },
{ min: 6, max: 12, message: '长度应在 6 到 12 个字符之间', trigger: 'blur' }
]
}
};
},
methods: {
handleSubmit(formName) {
this.$refs[formName].validate(valid => {
if (valid) {
alert('登录成功!');
} else {
console.log('错误的提交!!');
return false;
}
});
},
handleReset(formName) {
this.$refs[formName].resetFields();
}
}
};
</script>
<style scoped>
.box-card {
width: 480px;
}
</style>
```
这段代码展示了如何将 `el-card` 和 `el-form` 进行组合使用[^3]。
---
<el-card shadow="never"> <el-divider content-position="left"><h3>创建&编辑邮件模板</h3></el-divider> <el-form label-position="top"> <el-form-item label="邮件名称" prop="name" style="width: 200px"> <el-input v-model="modeData.name"></el-input> </el-form-item> <el-form-item label="模板名称" prop="subject" style="width: 200px"> <el-input v-model="modeData.subject"></el-input> </el-form-item> <el-form-item label="语言" prop="language"> <el-select v-model="modeData.language" placeholder="请选择"> <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"> </el-option> </el-select> </el-form-item> <el-form-item label="启动/禁用" prop="enable"> <el-switch v-model="modeData.enable" active-text="禁用" inactive-text="启动"> </el-switch> </el-form-item> <el-form-item label="模板配置" prop="value"> <PiEditor v-model="modeData.value" placeholder="请输入" :height="400" /> </el-form-item> <el-button @click="onSubmit">保存</el-button> </el-form> </el-card>请为这段代码布局
可以使用以下代码布局:
```
<template>
<el-card shadow="never">
<el-divider content-position="left">
<h3>创建&编辑邮件模板</h3>
</el-divider>
<el-form label-position="top">
<el-form-item label="邮件名称" prop="name">
<el-input v-model="modeData.name" style="width: 200px" />
</el-form-item>
<el-form-item label="模板名称" prop="subject">
<el-input v-model="modeData.subject" style="width: 200px" />
</el-form-item>
<el-form-item label="语言" prop="language">
<el-select v-model="modeData.language" placeholder="请选择">
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
<el-form-item label="启动/禁用" prop="enable">
<el-switch v-model="modeData.enable" active-text="禁用" inactive-text="启动" />
</el-form-item>
<el-form-item label="模板配置" prop="value">
<PiEditor v-model="modeData.value" placeholder="请输入" :height="400" />
</el-form-item>
<el-form-item>
<el-button type="primary" @click="onSubmit">保存</el-button>
</el-form-item>
</el-form>
</el-card>
</template>
```
这样可以使表单更加美观,且易于使用。
阅读全文
相关推荐














