bilibili-vue3-vite-ts-pinia

# Ref

  • 将一个字段包装成响应式的对象
<script setup lang="ts">
// This starter template is using Vue 3 <script setup> SFCs
// Check out https://v3.vuejs.org/api/sfc-script-setup.html#sfc-script-setup
import HelloWorld from './components/HelloWorld.vue'
import {ref, Ref, isRef} from 'vue'

// 通过ref()函数创建响应式对象,返回Ref<T>类型对象
const message: Ref<string> = ref<string>('我是李达康')

const onInputKeyUp = () => {
  // 通过.value获取值
  console.log(message.value);
  // 判断某个对象是否是Ref类型
  console.log(isRef(message));
}
</script>
<template>
  <img alt="Vue logo" src="./assets/logo.png"/>
  <input type="text" v-model="message" @keyup="onInputKeyUp">
  {{ message }}
  <HelloWorld msg="Hello Vue 3 + TypeScript + Vite"/>
</template>

# Reactive

  • 简单类型用ref
  • 复杂对象和数组用reactive()
    • reactive({})
    • reactive([])
<script setup lang="ts">
// This starter template is using Vue 3 <script setup> SFCs
// Check out https://v3.vuejs.org/api/sfc-script-setup.html#sfc-script-setup
import HelloWorld from './components/HelloWorld.vue'
import {ref, Ref, isRef, reactive} from 'vue'

// 通过ref()函数创建响应式对象,返回Ref<T>类型对象
const message: Ref<string> = ref<string>('我是李达康')

// 复杂对象和数组
const user = reactive({
  username: '李达康',
  age: 18,
  // 引用的也是个响应式对象
  message: message
})
const users = reactive([user, user])
  {{ user }}
  <br/>
  {{ users }}
image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容