VUE使用ElementUI下拉框 @change事件數(shù)據(jù)不回顯問題
使用ElementUI下拉框 @change事件數(shù)據(jù)不回顯
問題
在VUE中使用ElementUI的el-select下拉框,它是通過接口異步獲取的下拉框數(shù)據(jù),選擇某一個值后,雖然在綁定的 @change 事件中能夠看到已賦值成功,控制臺輸出也顯示賦值操作完成數(shù)據(jù)變化,但是框上卻沒有顯示選中的值。
解決方案
VUE它是無法監(jiān)聽動態(tài)新增的屬性的變化,但是有一個方法可以為動態(tài)屬性賦值,那就是$set。
<template> ? <el-select ? ? v-model="value" ? ? multiple ? ? filterable ? ? allow-create ? ? default-first-option ? ? placeholder="請選擇文章標(biāo)簽"> ? ? @change="selectChange" ? ? <el-option ? ? ? v-for="item in options" ? ? ? :key="item.value" ? ? ? :label="item.label" ? ? ? :value="item.value"> ? ? </el-option> ? </el-select> </template> ? <script> ? export default { ? ? data() { ? ? ? return { ? ? ? ? paper:[{ ? ? ? ? ? ? title:'', ? ? ? ? ? ? author:'' ? ? ? ? }] ? ? ? ? options: [{ ? ? ? ? ? value: '1', ? ? ? ? ? label: 'HTML' ? ? ? ? }, { ? ? ? ? ? value: '2', ? ? ? ? ? label: 'CSS' ? ? ? ? }, { ? ? ? ? ? value: '3', ? ? ? ? ? label: 'JavaScript' ? ? ? ? }], ? ? ? ? value: [] ? ? ? } ? ? },methods{ ? ? ? ? // 操作下拉框選中事件 ? ? ? ? selectChange(val) { ? ? ? ? ? ? const title = this.options.find(item=>item.value===val).label ?? ? ? ? ? ? ? this.$set(this.paper, this.paper.title, title) ? ? ? ? ? ? } ? ? } ? } </script>
VUE下拉框數(shù)據(jù)及數(shù)據(jù)回顯問題
下拉框默認(rèn)顯示第一個數(shù)據(jù),及獲取下拉框中選擇的任意數(shù)據(jù):
<label>類型:</label> ?<select v-model="value_type" @change="getvalue_typeected(value_type)"> ? ?<option :value="item" v-for="item in types" :key="item">{{ ? ? ?item ? ?}}</option> ?</select> export default { ?? ?data(){ ?? ??? ?return { ?? ??? ??? ?value_type: "", ? ? ? ?? ??? ?types: ["STRING", "BOOLEAN", "INTEGER",'DATETIME','DATE'], ?? ??? ?} ?? ?}, ?? ?created(){ ?? ? ? ?//下拉框默認(rèn)顯示第一個 ?? ??? ?this.value_type = this.types[0]; ?? ?}, ?? ?methods:{ ?? ??? ?getvalue_typeected(val) { ?? ? ? ? ?this.value_type = val; ?? ? ? ?}, ?? ?} }
下拉框數(shù)據(jù)回顯:
getCurIdData() { ? this.$http ? ? .get(`/api/${id}`) ? ? .delegateTo(api_request) ? ? .then((data) => { ? ? ? this.value_type= data.value_type; ? ? }); }
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
VueJs監(jiān)聽window.resize方法示例
本篇文章主要介紹了VueJs監(jiān)聽window.resize方法示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-01-01Vue Getters和mapGetters的原理及使用示例詳解
Vuex的核心概念包括state、mutations、actions、getters和modules,今天,我們要深入探討其中一個關(guān)鍵部分:getters,以及它的相關(guān)輔助函數(shù)mapGetters,感興趣的朋友跟隨小編一起看看吧2024-08-08FastApi+Vue+LayUI實現(xiàn)前后端分離的示例代碼
本文主要介紹了FastApi+Vue+LayUI實現(xiàn)前后端分離的示例代碼,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-11-11vue.js使用v-model指令實現(xiàn)的數(shù)據(jù)雙向綁定功能示例
這篇文章主要介紹了vue.js使用v-model指令實現(xiàn)的數(shù)據(jù)雙向綁定功能,簡單分析了v-model指令的功能并結(jié)合實例形式給出了v-model指令實現(xiàn)數(shù)據(jù)雙向綁定相關(guān)操作技巧,需要的朋友可以參考下2018-05-05