美文网首页
bilibili-vue3-vite-ts-pinia

bilibili-vue3-vite-ts-pinia

作者: 垃圾简书_吃枣药丸 | 来源:发表于2022-03-30 22:00 被阅读0次

    # 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

    相关文章

      网友评论

          本文标题:bilibili-vue3-vite-ts-pinia

          本文链接:https://www.haomeiwen.com/subject/xxwwjrtx.html