练习vue3.0笔记

vue3.0:官网
参考文章:尚硅谷 Vue3+TS 快速上手

生命周期钩子函数

1.常用的api

  1. 1.setup: 新的option, 所有的组合API函数都在此使用, 只在初始化时执行一次 函数如果返回对象, 对象中的属性或方法, 模板中可以直接使用 取消了methods和data
  setup(props) {
    if (props.foo === isAbsent) {
      // foo 没有被传入。
    }
  }
	直接使用setup,在里面定义变量,接受两个参数props,context
  1. 2.ref : 是一个函数,作用:定义一个响应式的数据,返回来的是一个ref对象 对象中有一个value属性,如果需要做对象进行操作,需要使用ref对象调用value属性的 方式进行操作
const count = ref(0)
console.log(count.value) // 0

count.value++
console.log(count.value) // 1
  1. 3.reactive:作用: 定义多个数据的响应式
const obj = reactive({ count: 0 })

const proxy = reactive(obj): 接收一个普通对象然后返回该普通对象的响应式代理器对象
响应式转换是“深层的”:会影响对象内部所有嵌套的属性
内部基于 ES6 的 Proxy 实现,通过代理对象操作源对象内部数据都是响应式的

<div class="home">
    <div>ref的使用:{{count}}</div>
    <button @click="updateCount" >增加</button>
    <!-- <HelloWorld msg="Welcome to Your Vue.js + TypeScript App"/> -->
  </div>
  <div class="home">
    <h3>{{user.name}}</h3>
    <h3>{{user.age}}</h3>
    <h3>{{user.wify}}</h3>
    <h3>{{user.size}}</h3>

    <hr>
    <button @click="updateUser">更新user数据</button>
    <!-- <HelloWorld msg="Welcome to Your Vue.js + TypeScript App"/> -->
  </div>
import { defineComponent, reactive, ref } from 'vue';   //组合式api都需要引入
 setup(props,context){   
    let count = ref(0)   
    const obj:any = {   //any  ts语法  any代表任何类型
      name:'小米',
      age:20,
      wify:{
        name:'111',
        age:'2222',
        card:[1,2,3]
      }
    }

    const user = reactive<any>(obj) // obj为proxy代理对象,可以实现数据响应
    // let count = 3
    function updateCount(){
      count.value++
    }
    const updateUser = ()=>{    //updateUser   页面中定义的函数
      user.name = "美的"
      user.wify.card[0] = 5
      obj.size=5
      delete obj.age
    }
    return {   //将setup里面定义的函数和方法抛出
      count,
      user,
      updateCount,
      updateUser
    }
  }

以上打稿时间----------------------------------------------------------------2022/5/22

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值