vue2.x改变数据:

<template>
  <div class="v2">
    这是数据展示:
    <div v-for="item in nm" :key="item">name: {{item.name}}, type: {{item.type}}</div>
    <div @click="chfn">点击改变数据</div>
  </div>
</template>
<script>
export default {
  data() {
    return {
      nm: [{name: 'a1',type: 1},{name: 'a2',type: 2},{name: 'a3',type: 3},]
    }
  },
  methods: {
    chfn() {
      this.nm = [{name: 'a111',type: 10},{name: 'a222',type: 20},{name: 'a333',type: 30},]
    }
  }
}
</script>
<style>
</style>

vue2.x 没有点击改变数据方法的时候:

这是vue2.x 点击了改变方法后改变了数据

接下来我们看看 vue3.x 的初始化数据和改变数据:

<template>
  <div>展示ref初始化的数据:{{ num }}</div>
  <div @click="add" style="margin-bottom: 20px;background: #ccc;">点击改变ref赋值数据(每点击一次加上10)</div>
  <div v-for="item in a2.nm" :key="item">展示reactive初始化的数据:{{item.type}}</div>
  <div @click="aam" style="background: #ccc;" >点击改变reactive赋值数据(我这里测试时是点击后随意改变的)</div>
</template>
<script>
import { reactive, ref } from "vue";
export default {
  name: "Button",
  setup() {
    const num = ref(2); // ref 初始化单一型数据
    function add() { // 改变num的方法
      num.value += 10;
    }
    const a2 = reactive({nm: [{name: 'a1',type: 1},{name: 'a2',type: 2},{name: 'a3',type: 3},]})  // reactive 初始化复杂型数据
    function aam(item) { // 改变a2的方法
      console.log('aam', item)
      a2.nm = [{name: 'a11',type: 11},{name: 'a22',type: 22},{name: 'a33',type: 33},]
    }
    return {
      num,
      add, // 改变num的方法
      a2,
      aam   // 改变a2的方法
    }
  },
};
</script>

看起来要稍微的麻烦一点。它把定义和改变数据都放到了setup里面。还区分了定义数据的不同关键字(ref,reactive)

vue3.x 没有点击改变数据方法的时候:

这是 vue3.x 点击了改变方法后改变了数据

可以看到 vue3 的修改数据已经成功。

总结:vue2 和vue3对数据的初始化赋值还是有很大区别。在改变数据时也是有不小的区别。但是也不难。

vue3 操作修改数据的更多相关文章

  1. jsp 页面跳转后修改数据,返回时不更新

    项目jsp页面上用隐藏input框接收获取数据,在跳转入另一页面前,js操作修改数据,但返回时发现无效. 需求是点击抽奖后机会减少一次,但是当做跳转操作后返回时,次数有缓存问题 jsp: <in ...

  2. JDBC操作数据库之修改数据

    使用JDBC修改数据库中的数据,起操作方法是和添加数据差不多的,只不过在修改数据的时候还要用到UPDATE语句来实现的,例如:把图书信息id为1的图书数量改为100,其sql语句是:update bo ...

  3. bootstrap-table:操作栏点击编辑按钮弹出模态框修改数据

    核心代码: columns: [ { checkbox:true //第一列显示复选框 }, ... { field: 'fail_num', title: '失败数' }, { field: 'op ...

  4. DataTable数据类型的一些操作 增加行、插入行、修改数据、修改列名、修改列顺序、计算、选取或删除行(列)、排序、某列distinct值 等

    Datatable 这个数据类型在C#中涉及到对数据库读取时的用处还是挺大的,最近在处理一个报表开发时,一开始把所有的操作都放在sql 上面来做,就是我需要什么样的数据我就query出什么,但是这样其 ...

  5. DataGridView 直接修改数据操作

    DataGridView单元格进入编辑模式的方法: 双击或者f2: EditCellOnEnter 属性设为True,对DataGridView进行配置,当用户移动到该单元格后,该单元格可立即切换到编 ...

  6. c#教程之通过数据绑定修改数据

    通过数据绑定修改数据 "实体框架"提供了与数据库的双向通信通道.前面已经讲述了如何使用"实体框架"获 取数据,现在来看看如何修改获取的信息,并将改动发送回数据库 ...

  7. SQL server基础知识(表操作、数据约束、多表链接查询)

    SQL server基础知识 一.基础知识 (1).存储结构:数据库->表->数据 (2).管理数据库 增加:create database 数据库名称 删除:drop database ...

  8. phalcon: update修改数据却变成了insert插入数据

    phalcon: 在对表进行操作是,update修改数据却变成了insert插入数据. 发现,update的时,无论怎么加where都会变成了insert插入数据. 检查了一下表,原来是表没有 主键引 ...

  9. MYSQL中约束及修改数据表

    MYSQL中约束及修改数据表 28:约束约束保证数据的完整性和一致性约束分为表级约束和列级约束约束类型包括:    NOT NULL(非空约束)    PRIMARY KEY(主键约束)    UNI ...

随机推荐

  1. Linux 显示文件大小的命令

    ll显示的是字节,可以使用-h参数来提高文件大小的可读性,另外ll不是命令,是ls -l的别名ls -al 是以字节单位显示文件或者文件夹大小: 字节b,千字节kb, 1G=1024M=1024*10 ...

  2. 内置方法 __new__ __del__

    1.__new__ 构造方法 实例化对象是先执行__new__方法,但是类中没有__new__方法,所以先到父类object类中的new方法,开辟一个属于对象的空间,然后再执行init方法 设计模式: ...

  3. 如何解析EML(邮件)格式的文件以及一款小巧的EML邮件阅读工具

    在理解EML格式的时候,先回顾一下历史,这样有助于理解邮件的格式,比如邮件传输时为何会有多种编码方式.此外,理解EML格式也有助于理解HTTP协议. 历史溯源 由于历史原因,我们目前看到的大部分的网络 ...

  4. HMS Core机器学习服务图像超分能力,基于深度学习提升新闻阅读体验

    在移动端阅读资讯时,人们对高分辨率.高质量的图像要求越来越高.但受限于网络流量.存储.图片源等诸多因素,用户无法便捷获得高质量图片.移动端显示设备的高分辨率图片获得问题亟待解决.不久前,HMS Cor ...

  5. Java常用类笔记(学习尚硅谷java基础教程)

    一.Java根类Object类1.toString()方法 1)以文本对象返回,故toString()的定义为public String toString() {} 2)默认的字符串输出是:包.类名@ ...

  6. 【Java】这 35 个 Java 代码优化细节!

    前言 代码 优化 ,一个很重要的课题.可能有些人觉得没用,一些细小的地方有什么好修改的,改与不改对于代码的运行效率有什么影响呢?这个问题我是这么考虑的,就像大海里面的鲸鱼一样,它吃一条小虾米有用吗?没 ...

  7. JdbcTemplate ?

    JdbcTemplate 类提供了很多便利的方法解决诸如把数据库数据转变成基本数据 类型或对象,执行写好的或可调用的数据库操作语句,提供自定义的数据错误处 理.

  8. CKEditor禁用浏览服务器的功能

    在CKeditor的config.js文件中,添加以下内容,重启服务器,图片.flash.video中的浏览服务器按钮就会消失掉 /*按下" 浏览服务器"按钮时应启动的外部文件管理 ...

  9. PCB各层的含义

    阻焊层:solder mask,是指板子上要上绿油的部分:因为它是负片输出,所以实际上有solder mask的部分实际效果并不上绿油,而是镀锡,呈银白色! 助焊层:paste mask,是机器贴片时 ...

  10. sublime text3 好用的插件

    sublime text3 推荐插件 Package Controller安装 1.打开sublime text 3,按ctrl+~或者菜单View > Show Console打开命令窗口.2 ...