vue2与vue3知识点

1.vue2(optionsAPI)选项式API
2.vue3(composition API)响应式API

vue3 setup 中this是未定义(undefined)vue3中已经开始弱化this

vue2通过this可以拿到vue3setup定义得值和方法

setup语法糖

ref =========> 可以定义:基本类型、对象类型得响应式数据

reactive ======> 定义:对象响应式数据

toRef 的作用是将一个响应式对象中的属性转换成单独的响应式引用

toRefs 将一个对象的所有属性变成响应式引用,

javascript 复制代码
import { reactive, toRefs } from 'vue';

export default {
  setup() {
    // 创建一个响应式对象
    const state = reactive({
      count: 0,
      name: 'Vue 3'
    });

    // 使用toRefs将响应式对象的属性转换为响应式引用
    const refs = toRefs(state);

    // 返回响应式引用,以便在模板中使用
    return {
      ...refs
    };
  },
};
javascript 复制代码
<template>
    <div>
        <!-- 使用ref -->
        <el-button type="warning">Warning</el-button>
        <el-button type="danger" @click="changeData">Danger</el-button>
        <div>姓名{{ name }}</div>
        <div>年龄{{ age }}</div>
        <div>电话{{ tel }}</div>
        <!-- 使用reactiv -->

    </div>
</template>
<script lang="ts" setup>
import { ref, reactive } from 'vue'
//数据
let name = ref('张三')
let age = ref(42)
let tel = ref(15231971993)
const changeData = () => {
    age.value = age.value + 10
}
// reactive
let car = reactive(
    {
        brand: '银行',
        price: 20,
        color: 'red'
    }
)
console.log(car,'car')
</script>
相关推荐
Ama_tor12 分钟前
obsidian进阶の插件系列|Templater从小白到菜鸟
javascript·markdown·插件·obsidian
WordPress学习笔记18 分钟前
解决Bootstrap下拉菜单一级链接无法点击的问题
前端·bootstrap·html
Never_Satisfied26 分钟前
C#插值字符串中大括号表示方法
前端·c#
wuhen_n29 分钟前
初识TypeScript
javascript·typescript
w***765536 分钟前
JS vs jQuery:核心差异解析
开发语言·javascript·jquery
踢球的打工仔1 小时前
typescript-类
前端·javascript·typescript
天天打码1 小时前
Svelte-无虚拟DOM、极致性能的现代高性能Web开发框架!
前端·node.js·vue·svelte
0思必得01 小时前
[Web自动化] Selenium元素定位
前端·python·selenium·自动化·html
EEEzhenliang2 小时前
CSS知识概括、总结
前端·css
大阳光男孩2 小时前
ElementUI表格懒加载子级更新数据刷新不生效问题
前端·javascript·elementui