返回顶部
首页 > 资讯 > 精选 >Vue3中使用reactive时后端有返回数据但dom没有更新如何解决
  • 718
分享到

Vue3中使用reactive时后端有返回数据但dom没有更新如何解决

2023-07-05 16:07:40 718人浏览 薄情痞子
摘要

本篇内容主要讲解“vue3中使用Reactive时后端有返回数据但dom没有更新如何解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Vue3中使用reactive时后端有返回数据但dom没有更

本篇内容主要讲解“vue3中使用Reactive时后端有返回数据但dom没有更新如何解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习Vue3中使用reactive时后端有返回数据但dom没有更新如何解决”吧!

    使用reactive时,后端有返回数据但dom没有更新

    问题

    在Vue3的setup中使用reactive更新数据,但是dom没有更新问题

    代码:

    <template>    <div class="aside">        <div class="collpase-btn" @click="collpaseMenu">            <el-icon><fold /></el-icon>        </div>        <el-menu            active-text-color="#ffd04b"            background-color="#545c64"            class="el-menu-vertical-demo"            default-active="2"            text-color="#fff"            :collapse="store.state.isCollapse"            @open="handleOpen"            @close="handleClose"        >            <el-sub-menu :index="item.id" v-for="item in menus" :key="item.id">                <template #title>                    <el-icon><grid /></el-icon>                    <span>{{item.title}}</span>                </template>                <el-menu-item :index="it.id" v-for="it in item.subMenuList">{{it.title}}</el-menu-item>            </el-sub-menu>         </el-menu>    </div></template><script lang="ts">import axiOS from 'axios';import { defineComponent, onMounted, reactive } from 'vue'import { useStore } from 'vuex'; export default defineComponent({    name:'Aside',    setup() {        const store = useStore();        const mensList:any = [];        let menus = reactive(mensList);                const handleOpen = (key: string, keyPath: string[]) => {         }        const handleClose = (key: string, keyPath: string[]) => {                    };        const collpaseMenu = () => {            store.dispatch('collpaseChange');        };        onMounted(() => {            axios.get('/user/menu').then(res => {            menus.mensList = res.data.menusList;        });        });        return {            handleOpen,            handleClose,            collpaseMenu,            store,            menus        }    },})</script> <style lang="sCSS" scoped>.el-menu-item.is-active{    background-color: var(--el-menu-hover-bg-color);;}.collpase-btn{   text-align: center;    width: 100%;    padding: 10px 0px;    cursor: pointer;    .el-icon{        color: white;        font-size: 24px;    }}</style>

    Vue3中使用reactive时后端有返回数据但dom没有更新如何解决

    直接使用reactive()一个空数组,改变当前值时,页面不会自动刷新。

    解决办法

    使用reactive时,将参数变为一个对象形式,而不是单纯的数组。

    Vue3中使用reactive时后端有返回数据但dom没有更新如何解决

    当改为传入对象包裹后,页面正常显示:

    Vue3中使用reactive时后端有返回数据但dom没有更新如何解决

    关于vue3中reactive的意义

    在学习Vue3的时候产生疑问:

    const addFORM = reactive({ // 这里面的reactive啥意思  sysPre: null,  diaPre: null,  tem: null})

    查询解决

    在Vue3中,响应式对象是指通过reactive函数转换而来的对象,它的属性可以被Vue自动监测,当属性值发生变化时,Vue会自动更新相关的视图。这个过程是通过Vue内部实现的响应式系统来完成的。

    响应式对象的意义在于使得开发者可以更加方便地管理和操作数据。当数据被转换为响应式对象后,我们可以直接修改对象的属性值,而不需要手动调用Vue的更新函数来更新视图。这样可以极大地提高开发效率,让开发者更加专注于业务逻辑的实现。

    此外,响应式对象还可以与Vue的模板语法、组件等功能无缝衔接,使得我们可以通过组合使用响应式对象和Vue的其他功能,快速开发出高效、可维护的应用程序。

    在这段代码中,addForm对象被使用reactive函数转换为一个响应式对象。这意味着当addForm对象的属性sysPre,diaPre或tem发生变化时,相关的依赖将会自动更新,如绑定在模板中的表单输入框等。

    到此,相信大家对“Vue3中使用reactive时后端有返回数据但dom没有更新如何解决”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

    --结束END--

    本文标题: Vue3中使用reactive时后端有返回数据但dom没有更新如何解决

    本文链接: https://lsjlt.com/news/353751.html(转载时请注明来源链接)

    有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

    猜你喜欢
    • Vue3中使用reactive时后端有返回数据但dom没有更新如何解决
      本篇内容主要讲解“Vue3中使用reactive时后端有返回数据但dom没有更新如何解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Vue3中使用reactive时后端有返回数据但dom没有更...
      99+
      2023-07-05
    • 如何解决IE11 vue+webpack项目中数据更新后页面没有刷新的问题
      这篇文章主要介绍如何解决IE11 vue+webpack项目中数据更新后页面没有刷新的问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!vue +webpack 项目中数据更新后页面...
      99+
      2024-04-02
    • 在Python中使用os.path.exists()函数时返回false如何解决
      在Python中使用os.path.exists()函数时返回false如何解决?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。如下面所示,如果我们用file的readlin...
      99+
      2023-06-14
    • 在Python中使用requests库爬取数据时返回为空如何解决
      在Python中使用requests库爬取数据时返回为空如何解决?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。Python主要用来做什么Python主要应用于:...
      99+
      2023-06-06
    • 使用mybatis执行SQL语句时有参数出现返回NULL值如何解决
      今天就跟大家聊聊有关使用mybatis执行SQL语句时有参数出现返回NULL值如何解决,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。原来的写法:<select id=...
      99+
      2023-05-31
      mybatis sql null
    • 如何解决使用Hybris Commerce User API读取用户信息时电话字段没有返回问题
      小编给大家分享一下如何解决使用Hybris Commerce User API读取用户信息时电话字段没有返回问题,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!在使用Hybris Commerce User API读取一个u...
      99+
      2023-06-04
    • VUE通过JS修改html对象的值导致没有更新到数据中如何解决
      这篇文章主要介绍了VUE通过JS修改html对象的值导致没有更新到数据中如何解决的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇VUE通过JS修改html对象的值导致没有更新到数据中如何解决文章都会有所收获,下面...
      99+
      2023-07-04
    • 如何解决herf=#导致Ajax请求时没有向后台发送数据的问题
      本篇内容介绍了“如何解决herf=#导致Ajax请求时没有向后台发送数据的问题”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅...
      99+
      2024-04-02
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作