elementUI el-form 數(shù)據(jù)無(wú)法賦值且不報(bào)錯(cuò)解決方法
需求
vue項(xiàng)目中使用elementUI的el-form組件,里面有部分后端數(shù)據(jù)遍歷的字段和部分確定的字段。
問(wèn)題
遍歷的字段可以修改值,但是確定的幾個(gè)字段無(wú)法修改值。
解決思路
在Vue實(shí)例創(chuàng)建時(shí),form對(duì)象部分字段未聲明,因此就沒(méi)有被Vue轉(zhuǎn)換為響應(yīng)式的屬性,自然就不會(huì)觸發(fā)視圖的更新。
可以Vue的全局this.$set()
向響應(yīng)式對(duì)象中添加一個(gè)屬性,并確保這個(gè)新屬性同樣是響應(yīng)式的,且觸發(fā)視圖更新。
this.$set()用于向響應(yīng)式對(duì)象上添加新屬性,因?yàn)?Vue 無(wú)法探測(cè)普通的新增屬性。
this.$set()的語(yǔ)法
this.$set(target, propertyName/index, value) 參數(shù)一:target: 要更改的數(shù)據(jù)源(可以是一個(gè)對(duì)象或者數(shù)組) 參數(shù)二:propertyName/index: 要更改的具體數(shù)據(jù) (索引) 參數(shù)三:value: 重新賦的值(any)
代碼
html
<template> <el-form :model="ruleForm"> <el-form-item v-for="item in key_list" :key="item.key" :label="item.title" :prop="item.key"> <div v-if="item.key === 'number'"> {{ setNumber(ruleForm[item.key]) }} </div> <div v-else> <el-input v-model="ruleForm[item.key]" /> </div> </el-form-item> <el-form-item label="階段"> <el-select v-model="ruleForm.stage" placeholder="選擇階段"> <el-option v-for="item in stageList" :key="item.id" :label="item.name" :value="item.id" /> </el-select> </el-form-item> <el-form-item label="時(shí)間"> <el-date-picker v-model="ruleForm.time" type="datetime" placeholder="選擇日期時(shí)間" value-format="yyyy-MM-dd HH:mm:ss" /> </el-form-item> </el-form> </template>
js
<script> import api from './api' export default { data() { key_list: [], ruleForm: {}, }, created() { this.init() }, methods: { // 初始化 init() { api.Init({ number: this.$route.query.number }).then(res => { if (res.code === 200) { this.key_list = res.key_list this.ruleForm = res.data this.$set(this.ruleForm, 'time', null) this.$set(this.ruleForm, 'stage', null) } else { this.$message.error(res.msg) } }) }, } } </script>
到此這篇關(guān)于elementUI el-form 數(shù)據(jù)無(wú)法賦值且不報(bào)錯(cuò)解決方法的文章就介紹到這了,更多相關(guān)elementUI el-form無(wú)法賦值內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Vue使用echarts散點(diǎn)圖在區(qū)域內(nèi)標(biāo)點(diǎn)
這篇文章主要為大家詳細(xì)介紹了Vue使用echarts散點(diǎn)圖在區(qū)域內(nèi)標(biāo)點(diǎn),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-03-03vue-cli安裝全過(guò)程(附帶cnpm安裝不成功及vue不是內(nèi)部命令)
這篇文章主要介紹了vue-cli安裝全過(guò)程(附帶cnpm安裝不成功及vue不是內(nèi)部命令),具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-11-11使用vue腳手架(vue-cli)搭建一個(gè)項(xiàng)目詳解
這篇文章主要介紹了vue腳手架(vue-cli)搭建項(xiàng)目,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-05-05Vue項(xiàng)目打包(build)時(shí),自動(dòng)打以時(shí)間命名的壓縮包方式
這篇文章主要介紹了Vue項(xiàng)目打包(build)時(shí),自動(dòng)打以時(shí)間命名的壓縮包方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-10-10在Vue項(xiàng)目中引入Echarts繪制K線圖的方法技巧
在Vue項(xiàng)目開(kāi)發(fā)中,數(shù)據(jù)可視化是一項(xiàng)重要的任務(wù),Echarts是一個(gè)由百度開(kāi)源的數(shù)據(jù)可視化庫(kù),提供了豐富的圖表類(lèi)型和強(qiáng)大的交互功能,其中,K線圖常用于展示金融數(shù)據(jù)的走勢(shì),本文將詳細(xì)介紹如何在Vue項(xiàng)目中引入Echarts并繪制K線圖,需要的朋友可以參考下2025-04-04Vue實(shí)現(xiàn)active點(diǎn)擊切換方法
下面小編就為大家分享一篇Vue實(shí)現(xiàn)active點(diǎn)擊切換方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-03-03