vue iview實(shí)現(xiàn)動態(tài)新增和刪除
本文實(shí)例為大家分享了vue iview動態(tài)新增和刪除的具體代碼,供大家參考,具體內(nèi)容如下
<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="作業(yè)過程描述:"
style="width:40%;"
:prop="'attrList.' + index + '.WorkDesc'"
:rules="{required: true, message: '作業(yè)過程描述不能為空', trigger: 'blur'}"
>
<Input
v-model="item.WorkDesc"
type="textarea"
:autosize="{minRows: 5,maxRows: 10}"
placeholder="輸入作業(yè)過程描述..."
/>
</FormItem>
<FormItem style="width:20%;" label="作業(yè)順序:">
<!-- :rules="ruleWorkSort" -->
<Input v-model.trim="item.WorkSort" placeholder="作業(yè)順序" />
</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("請先保存膠囊數(shù)據(jù)");
}
}
} else {
this.$Message.error("保存失敗!");
}
});
},
關(guān)于vue.js組件的教程,請大家點(diǎn)擊專題vue.js組件學(xué)習(xí)教程進(jìn)行學(xué)習(xí)。
更多vue學(xué)習(xí)教程請閱讀專題《vue實(shí)戰(zhàn)教程》
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
vue-router實(shí)現(xiàn)編程式導(dǎo)航的代碼實(shí)例
今天小編就為大家分享一篇關(guān)于vue-router實(shí)現(xiàn)編程式導(dǎo)航的代碼實(shí)例,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2019-01-01
詳解vue項(xiàng)目優(yōu)化之按需加載組件-使用webpack require.ensure
本篇文章主要介紹了詳解vue項(xiàng)目優(yōu)化之按需加載組件-使用webpack require.ensure,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-06-06
vue-i18n的9以上版本中@被用作特殊字符處理,直接用會報錯問題
這篇文章主要介紹了vue-i18n的9以上版本中@被用作特殊字符處理,直接用會報錯問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-08-08
vue連接本地服務(wù)器的實(shí)現(xiàn)示例
本文主要介紹了vue連接本地服務(wù)器的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-01-01
Vue點(diǎn)擊在彈窗外部實(shí)現(xiàn)一鍵關(guān)閉的示例代碼
在Vue應(yīng)用中,彈窗是一個常見的交互元素,有時我們可能希望用戶點(diǎn)擊彈窗外部時,彈窗能夠自動關(guān)閉,本文主要介紹了Vue點(diǎn)擊在彈窗外部實(shí)現(xiàn)一鍵關(guān)閉的示例代碼,感興趣的可以了解一下2024-06-06
vue子組件中使用window.onresize()只執(zhí)行一次問題
這篇文章主要介紹了vue子組件中使用window.onresize()只執(zhí)行一次問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-08-08

