时间:2021-05-26
本文实例为大家分享了vue iview动态新增和删除的具体代码,供大家参考,具体内容如下
<Form ref="capsuleAttr" :model="capsuleAttr" :label-width="100" style="width: 80%"> <ul> <li v-for="(item, index) in capsuleAttr.attrList" v-if="item.status" :key="index"> <FormItem style="width:50%;" label="属性名称:" :prop="'attrList.' + index + '.AttrName'" :rules="{required: true, message: '属性名称不能为空', trigger: 'blur'}" > <Col span="7"> <Input v-model.trim="item.AttrName" placeholder="属性名称" /> </Col> <Col span="2" style="margin-left:1%;"> <Button @click="handleRemove(item,index)" type="error" icon="md-close">删除</Button> </Col> </FormItem> <FormItem style="width:20%;" label="温度:" :prop="'attrList.' + index + '.Temperature'" :rules="{required: true, message: '温度不能为空', trigger: 'blur',type:'string', transform(val) { return String(val)}}" > <Input v-model.trim="item.Temperature" placeholder="温度" /> </FormItem> <FormItem style="width:20%;" label="流量:" :prop="'attrList.' + index + '.Volume'" :rules="{required: true, message: '流量不能为空', trigger: 'blur'}" > <Input v-model.trim="item.Volume" placeholder="流量" /> </FormItem> <FormItem label="推荐流量:" style="width:20%;"> <Input v-model.trim="item.RcommendVolume" placeholder="流量" /> </FormItem> <FormItem label="吹气时间:" style="width:20%;"> <Input v-model.trim="item.Blow" placeholder="吹气时间" /> </FormItem> <FormItem label="浸泡时间:" style="width:20%;"> <Input v-model.trim="item.Soak" placeholder="浸泡时间" /> </FormItem> <FormItem label="作业过程描述:" style="width:40%;" :prop="'attrList.' + index + '.WorkDesc'" :rules="{required: true, message: '作业过程描述不能为空', trigger: 'blur'}" > <Input v-model="item.WorkDesc" type="textarea" :autosize="{minRows: 5,maxRows: 10}" placeholder="输入作业过程描述..." /> </FormItem> <FormItem style="width:20%;" label="作业顺序:"> <!-- :rules="ruleWorkSort" --> <Input v-model.trim="item.WorkSort" placeholder="作业顺序" /> </FormItem> <Divider dashed /> </li> </ul> <FormItem> <Row> <Col span="8"> <Button type="dashed" long @click="handleAttrAdd" icon="md-add">增加属性</Button> </Col> </Row> </FormItem> <FormItem> <Button type="primary" @click="handleAttrSubmit('capsuleAttr')">保存</Button> <Button @click="$router.go( -1)" style="margin-left: 8px">返回</Button> </FormItem></Form>data:
capsuleAttr: { //胶囊属性 index: 1, attrList: [ { AttrName: "", Temperature: "", Volume: "", CapsuleId: "", //属性ID RcommendVolume: "", //推荐流量 WorkDesc: "", Blow: "", //吹气时间 Soak: "", //浸泡时间 WorkSort: "", index: 1, status: 1 } ] },methods:
// 添加属性 handleAttrAdd() { this.capsuleAttr.index++; this.capsuleAttr.attrList.push({ AttrName: "", Temperature: "", Volume: "", WorkDesc: "", WorkSort: "", RcommendVolume: "", //推荐流量 Blow: "", //吹气时间 Soak: "", //浸泡时间 index: this.capsuleAttr.index, status: 1 }); }, handleRemove(item, index) { console.log(item.Id); if (item.Id) { this.$Modal.confirm({ title: "删除本条记录", onOk: () => { ProductModule.getCapsuleAttributeDel(item.Id).then(res => { if (res.data.Success) { this.capsuleAttr.attrList[index].status = 0; this.$Message.success("删除成功"); } }); }, onCancel: () => { console.log("onCancel"); } }); return; } this.capsuleAttr.attrList[index].status = 0; }, // 胶囊属性保存新增 handleAttrSubmit(name) { this.$refs[name].validate(valid => { if (valid) { if (this.userId) { this.getCapsuleAttrEditAdd(); } else { if (this.capsuleId) { this.getSaveAttrCreate(); } else { this.$Message.error("请先保存胶囊数据"); } } } else { this.$Message.error("保存失败!"); } }); },关于vue.js组件的教程,请大家点击专题vue.js组件学习教程进行学习。
更多vue学习教程请阅读专题《vue实战教程》
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例为大家分享了vue-iview动态新增和删除的具体代码,供大家参考,具体内容如下参考链接:vueiview动态新增和删除我根据上面的博客进行了test和
iview-admin是一个基于vue和iview组件库实现的管理后台前端,本文基于iview-admin最新版本,实现基于权限的动态路由加载。本文代码可参见:
本文实例为大家分享了vue+iview动态渲染表格(iview插件table),供大家参考,具体内容如下效果图(表格头部和表格主体都是动态渲染)重要代码expo
下面将介绍两种方式实现动态添加和删除列表1.不使用组件Vue测试实例-vue实现列表增加和删除添加{{list.title}}删除varvm=newVue({e
引言:最近使用vue在做一个后台系统,技术栈vue+iView,在页面中生成表格后,iView可以实现表格的导出,不过只能导出csv格式的,并不适合项目需求。如