<template v-slot:prop="{row}" v-if="item.prop ==='mg_state'"> <el-switch v-model="row.mg_state" /> </template>
时间: 2024-04-26 13:07:21 浏览: 10
This is a Vue.js template code that uses a scoped slot with the name "prop" to pass the data of the current row to the template. The template conditionally renders an El Switch component based on the value of the "prop" property of the "item" object. If the "prop" value is "mg_state", the switch is rendered and its v-model is bound to the "mg_state" property of the current row.
相关问题
<el-form-item label="联系人" prop="contactsList"> <el-button type="primary" link :disabled="dialogType === 'check'" @click="handleContactsInfo">添加</el-button> <el-table :data="infoForm.contactsList" border stripe size="small"> <el-table-column label="姓名" prop="ContactsName"> <template #default="{ row }"> <el-input :disabled="dialogType === 'check'" v-model.trim="row.ContactsName" maxlength="20" placeholder="请填写姓名" show-word-limit ></el-input> </template> </el-table-column> <el-table-column label="部门" prop="ContactsDepartment"> <template #default="{ row }"> <el-input :disabled="dialogType === 'check'" v-model.trim="row.ContactsDepartment" maxlength="20" show-word-limit placeholder="请填写部门" ></el-input> </template> </el-table-column> <el-table-column label="职务" prop="ContactsDuty"> <template #default="{ row }"> <el-input :disabled="dialogType === 'check'" v-model.trim="row.ContactsDuty" maxlength="20" show-word-limit placeholder="请填写职务" ></el-input> </template> </el-table-column> <el-table-column label="联系方式" prop="ContactNumber"> <template #default="{ row }"> <el-input :disabled="dialogType === 'check'" v-model.trim="row.ContactNumber" maxlength="50" show-word-limit placeholder="请填写联系方式" ></el-input> </template> </el-table-column> <el-table-column label="操作" width="56px"> <template #default="{ $index }"> <el-button type="primary" link size="small" :disabled="dialogType === 'check'" @click="handleRemove($index)" > 删除 </el-button> </template> </el-table-column> </el-table> </el-form-item> 该表单初始就有一个,且至少保留一个,对表单内姓名一栏进行必填校验
你可以通过在 el-input 元素的前面添加一个 el-form-item 元素,并设置 prop 属性为 "ContactsName",然后在 el-input 元素中添加一个 :rules 属性来进行必填校验。以下是示例代码:
```html
<el-table-column label="姓名" prop="ContactsName">
<template #default="{ row }">
<el-form-item prop="ContactsName" :rules="[{ required: true, message: '请填写姓名' }]">
<el-input
:disabled="dialogType === 'check'"
v-model.trim="row.ContactsName"
maxlength="20"
placeholder="请填写姓名"
show-word-limit
></el-input>
</el-form-item>
</template>
</el-table-column>
```
这样,当用户没有填写姓名时,表单会显示错误提示信息。
<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>
```
这样可以使表单更加美观,且易于使用。