vue.js

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript类库 > vue.js > vue3 reactive数据视图更新

vue3 reactive数据更新视图不更新问题解决

作者:w晚风

这篇文章主要为大家介绍了vue3 reactive数据更新视图不更新问题解决,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

vue3 通过reactive 做响应式处理

初次使用vue3 通过reactive 做响应式处理时,发现更新了数据,试图不更新问题。

代码

<template>
    <div>
        <div>
            数据:{{ dataList.name }}
        </div>
        <el-button type="primary" @click="btnFn()">修改数据</el-button>
    </div>
</template>
<script lang="ts" setup>
    import {
        reactive,
    } from 'vue'
    let dataList = reactive({
        name:'张三',
    });
    const btnFn = async () => {
        dataList = {
            name:'李四',
        };
        console.log(dataList)
    }
</script>

查阅资料说是需要内部再加个对象

修改

<template>
    <div>
        <div>
            数据:{{ dataList.data.name }}
        </div>
        <el-button type="primary" @click="btnFn()">修改数据</el-button>
    </div>
</template>
<script lang="ts" setup>
    import {
        reactive,
    } from 'vue'
    const dataList = reactive({
        data: {
            name: '张三',
        }
    });
    const btnFn = async () => {
        dataList.data = {
            name: '李四',
        };
        console.log(dataList)
    }
</script>

通过这种方式确实会更新视图。具体内部方法实现我暂未去看源码内部实现,待后续再看

以上就是vue3 reactive数据更新视图不更新问题解决的详细内容,更多关于vue3 reactive数据视图更新的资料请关注脚本之家其它相关文章!

您可能感兴趣的文章:
阅读全文