首页 > 其他分享 >Vue3 reactive 操作数组 响应性(数组变了,但页面显示没变)问题

Vue3 reactive 操作数组 响应性(数组变了,但页面显示没变)问题

时间:2023-06-30 15:57:34浏览次数:41  
标签:Vue3 reactive tableTemplates 数组 templateId 页面

问题代码:

tableTemplates: Array<HkTaskTemplateEntity> = reactive([]);

//删除方法的一部分 ,根据templateId删除数组数据
this.tableTemplates = this.tableTemplates.filter(item => templateId !== item.templateId);

删除后tableTemplates数组中对象减少,但vue页面显示数据条数无变化

原因:

Vue 2 在操作数组的时候,也可以和普通数组这样处理数据的变化,依然能够保持响应性,但在 Vue 3 ,如果使用 reactive 定义数组,则不能这么处理,必须只使用那些不会改变引用地址的操作。

解决方案:

1.将数组包在对象里,如

data=reactive(

{

tableTemplates:[]

});

2.使用ref,但是要注意 js里 使用 .value 操作值

参考文章:

单组件的编写 | Vue3 入门指南与实战案例

 

标签:Vue3,reactive,tableTemplates,数组,templateId,页面
From: https://www.cnblogs.com/dirgo/p/17516968.html

相关文章

  • vue3+tsx开发语法详解
    参考链接vue3+tsx开发语法详解vue3官方文档和jsx的使用......
  • Vue3 使用 axios 实现跨域
    Vue3使用 axios可以实现请求跨域问题1.安装axiosnpminstallaxios-S2.引入axios并配置为全局 $axios 对象main.jsimport{createApp}from'vue'importAppfrom'./App.vue'importaxiosfrom'axios'//createApp(App).mount('#app')c......
  • JavaScript中数组常用方法汇总!
    数组是一个复杂数据类型,我们在操作它的时候就不能再想基本数据类型一样操作了。比如我们想改变一个数组//创建一个数组vararr=[1,2,3]//我们想把数组变成只有1和2arr=[1,2]这样肯定是不合理,因为这样不是在改变之前的数组。相当于重新制作了一个数组给到arr......
  • 数组方法
    <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>Title</title></head><body></body></html><script>constarr=['a','b','......
  • Vue3 vite:is a JavaScript file. Did you mean to enable the 'allowJs' option?
    描述今天在vue3+vite下进行打包时,突然vscode报了一个error。 大概的意识是询问是否启用“allowJS”选项,因为该文件在程序内是指定用于编译的根文件。提示信息已经很明确了,下面从网上摘抄了下什么是allowJS选项。allowJs是1.8中新提供的选项。TypeScrip......
  • 第1节:vue3开发前准备
    (1)需要安装nodeJs版本16.0或以上版本     以下是2023年6月30日官方文档截图 (2)查看你的电脑里node版本 通过cmd命令查看node-v查看是否大于等于16 (3)创建vue项目注意:vue项目的命名不能用大写字母,只能小写字母,创建的项目名会以文件夹的方式呈现创建命令:cmd进......
  • Vue3 如何使用 axios
    在Vue3中集成和使用AxiosAxios是一个流行的JavaScript库,用于在浏览器和Node.js中进行HTTP请求。它提供了简洁的API,可以轻松地发送异步请求并处理响应数据。在Vue3中,我们可以使用Axios来与后端进行数据交互。 参考资料:Axios官方文档:GettingStarted| AxiosD......
  • XML PHP SimpleXMLElement Object数组转化为普通数组
    做微信第三方接口接入的时候发现接口返回的数据都是xml格式的。以下是如何把xml格式转化为普通的数组格式取值。xml格式数据:$xmlstr="<xml><mch_appid>".$data['mch_appid']."</mch_appid><mchid>".$data['mchid']."</mchid>......
  • 处理HTTPGET请求参数中含有数组不识别的问题处理
    如:  在Program中增加 ......
  • Vue3从入门到精通(三)
    vue3插槽Slots在Vue3中,插槽(Slots)的使用方式与Vue2中基本相同,但有一些细微的差异。以下是在Vue3中使用插槽的示例://ChildComponent.vue<template><div><h2>ChildComponent</h2><slot></slot></div></template>​//ParentComponent......