VUE使用ElementUI下拉框@change事件数据不回显怎么解决

其他教程   发布日期:2023年07月04日   浏览次数:535

这篇文章主要介绍了VUE使用ElementUI下拉框@change事件数据不回显怎么解决的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇VUE使用ElementUI下拉框@change事件数据不回显怎么解决文章都会有所收获,下面我们一起来看看吧。

    使用ElementUI下拉框 @change事件数据不回显

    问题

    在VUE中使用ElementUI的el-select下拉框,它是通过接口异步获取的下拉框数据,选择某一个值后,虽然在绑定的 @change 事件中能够看到已赋值成功,控制台输出也显示赋值操作完成数据变化,但是框上却没有显示选中的值。

    解决方案

    VUE它是无法监听动态新增的属性的变化,但是有一个方法可以为动态属性赋值,那就是$set。

    1. <template>
    2. <el-select
    3. v-model="value"
    4. multiple
    5. filterable
    6. allow-create
    7. default-first-option
    8. placeholder="请选择文章标签">
    9. @change="selectChange"
    10. <el-option
    11. v-for="item in options"
    12. :key="item.value"
    13. :label="item.label"
    14. :value="item.value">
    15. </el-option>
    16. </el-select>
    17. </template>
    18. <script>
    19. export default {
    20. data() {
    21. return {
    22. paper:[{
    23. title:'',
    24. author:''
    25. }]
    26. options: [{
    27. value: '1',
    28. label: 'HTML'
    29. }, {
    30. value: '2',
    31. label: 'CSS'
    32. }, {
    33. value: '3',
    34. label: 'JavaScript'
    35. }],
    36. value: []
    37. }
    38. },methods{
    39. // 操作下拉框选中事件
    40. selectChange(val) {
    41. const title = this.options.find(item=>item.value===val).label
    42. this.$set(this.paper, this.paper.title, title)
    43. }
    44. }
    45. }
    46. </script>

    VUE下拉框数据及数据回显问题

    下拉框默认显示第一个数据,及获取下拉框中选择的任意数据:

    1. <label>类型:</label>
    2. <select v-model="value_type" @change="getvalue_typeected(value_type)">
    3. <option :value="item" v-for="item in types" :key="item">{{
    4. item
    5. }}</option>
    6. </select>
    7. export default {
    8. data(){
    9. return {
    10. value_type: "",
    11. types: ["STRING", "BOOLEAN", "INTEGER",'DATETIME','DATE'],
    12. }
    13. },
    14. created(){
    15. //下拉框默认显示第一个
    16. this.value_type = this.types[0];
    17. },
    18. methods:{
    19. getvalue_typeected(val) {
    20. this.value_type = val;
    21. },
    22. }
    23. }

    下拉框数据回显:

    1. getCurIdData() {
    2. this.$http
    3. .get(`/api/${id}`)
    4. .delegateTo(api_request)
    5. .then((data) => {
    6. this.value_type= data.value_type;
    7. });
    8. }

    以上就是VUE使用ElementUI下拉框@change事件数据不回显怎么解决的详细内容,更多关于VUE使用ElementUI下拉框@change事件数据不回显怎么解决的资料请关注九品源码其它相关文章!