最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue elementUI el-form 數(shù)據(jù)無法賦值且不報錯的問題及解決方法

 更新時間:2023年12月26日 10:24:36   作者:xuelong-ming  
vue項目中使用elementUI的el-form組件,里面有部分后端數(shù)據(jù)遍歷的字段和部分確定的字段,遇到個問題遍歷的字段可以修改值但是確定的幾個字段無法修改值,下面小編給大家分享vue elementUI el-form 數(shù)據(jù)無法賦值且不報錯的問題及解決方法,感興趣的朋友一起看看吧

vue elementUI el-form 數(shù)據(jù)無法賦值,并且不報錯

需求

vue項目中使用elementUI的el-form組件,里面有部分后端數(shù)據(jù)遍歷的字段和部分確定的字段。

問題

遍歷的字段可以修改值,但是確定的幾個字段無法修改值。

解決思路

在Vue實例創(chuàng)建時,form對象部分字段未聲明,因此就沒有被Vue轉(zhuǎn)換為響應(yīng)式的屬性,自然就不會觸發(fā)視圖的更新。
可以Vue的全局this.$set()

向響應(yīng)式對象中添加一個屬性,并確保這個新屬性同樣是響應(yīng)式的,且觸發(fā)視圖更新。 
this.$set()用于向響應(yīng)式對象上添加新屬性,因為 Vue 無法探測普通的新增屬性。

this.$set()的語法

this.$set(target, propertyName/index, value)
參數(shù)一:target: 要更改的數(shù)據(jù)源(可以是一個對象或者數(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="時間">
			<el-date-picker v-model="ruleForm.time" type="datetime" placeholder="選擇日期時間"
                  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)于vue elementUI el-form 數(shù)據(jù)無法賦值且不報錯解決方法的文章就介紹到這了,更多相關(guān)vue elementUI el-form 數(shù)據(jù)無法賦值內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論

贞丰县| 北海市| 和田县| 措勤县| 鄂托克旗| 鲁甸县| 连平县| 井冈山市| 汪清县| 宝坻区| 曲松县| 丰城市| 师宗县| 辉南县| 永安市| 郁南县| 伊宁市| 长兴县| 安远县| 西安市| 中江县| 绿春县| 乌兰察布市| 车致| 大田县| 建昌县| 闻喜县| 兴城市| 措美县| 安徽省| 广饶县| 宝山区| 鄂伦春自治旗| 新绛县| 秭归县| 黔江区| 阳信县| 峡江县| 亚东县| 金昌市| 金乡县|