【Vue】Vue2.0+Vue3.0学习笔记day14(Vue3)

目录

150.computed计算属性

151.watch监视ref定义的数据

152.watch监视reactive定义的数据

153.watch时value的问题

154.watchEffect函数

155.Vue3生命周期

156.自定义hook

157.toRef与toRefs

158.shallowReactive与shallowRef


150.computed计算属性

  • 与Vue2.x中computed配置功能一致

  • 写法

import {computed} from 'vue'

setup(){
    ...
	//计算属性——简写
    let fullName = computed(()=>{
        return person.firstName + '-' + person.lastName
    })
    //计算属性——完整
    let fullName = computed({
        get(){
            return person.firstName + '-' + person.lastName
        },
        set(value){
            const nameArr = value.split('-')
            person.firstName = nameArr[0]
            person.lastName = nameArr[1]
        }
    })
}

<template>
  <h1>一个人的信息</h1>
  姓:<input type="text" v-model="person.firstName">
  <br>
  名:<input type="text" v-model="person.lastName">
  <br>
  <span>全名:{
  {person.fullName}}</span>
  <br>
  全名:<input type="text" v-model="person.fullName">
</template>

<script>
import { reactive } from '@vue/reactivity'
import { computed } from '@vue/runtime-core'

export default {
  name: 'Demo',
  setup(){
    // 数据
    let person = reactive({
      firstName:'张',
      lastName:'三'
    })

    // 计算属性--简写(没有考虑计算属性被修改的情况)
    /* person.fullName = computed(()=>{
      return person.firstName + '-' + person.lastName
    }) */
    // 计算属性--完整写法(考虑读和写)
    person.fullName = computed({
      get(){
        return person.firstName + '-' + person.lastName
      },
      set(value){
        const nameArr = value.split('-')
        person.firstName = nameArr[0]
        person.lastName = nameArr[1]
      }
    })

    // 返回一个对象(常用)
    return{
      person,
    }

  }
}
</script>

151.watch监视ref定义的数据

  • 与Vue2.x中watch配置功能一致

  • 两个小“坑”:

    • 监视reactive定义的响应式数据时:oldValue无法正确获取、强制开启了深度监视(deep配置失效)。
    • 监视reactive定义的响应式数据中某个属性时:deep配置有效。

<template>
  <h2>当前求和为:{
  {sum}}</h2>
  <button @click="sum++">点我+1</button>
  <hr>
  <h2>当前的信息为: {
  {msg}}</h2>
  <button @click="msg+='!'">修改信息</button>
</template>

<script>
import { ref } from '@vue/reactivity'
import { watch } from '@vue/runtime-core'

export default {
  name: 'Demo',
  setup(){
    // 数据
    let sum =ref(0)
    let msg =ref('你好啊')

    // 情况一:监视ref所定义的一个响应式数据
   /*  watch(sum,(newvalue,oldvalue)=>{
      console.log('sum变了',newvalue,oldvalue);
    }{immediate:true}) */
    // 情况二:监视ref所定义的多个响应式数据
    watch([sum,msg],(newvalue,oldvalue)=>{
      console.log('sum或msg变了',newvalue,oldvalue);
    },{immediate:true})

    // 返回一个对象(常用)
    return{
      sum,
      msg
    }

  }
}
</script>

152.watch监视reactive定义的数据

<template>
  <h2>当前求和为:{
  {sum}}</h2>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 尚硅谷是国内知名的IT培训机构,他们提供了关于Vue2.0和3.0的全套教程。Vue是一种流行的JavaScript框架,用于构建用户界面。2.0版本是Vue的早期版本,而3.0版本是最新的更新版本。 2.0版本的教程主要介绍了Vue的基础知识和核心概念,包括组件、指令、过滤器等。学习者可以了解如何使用Vue来构建单页应用程序,处理数据绑定、事件处理和路由等功能。此外,教程还涉及Vue的工具和生态系统,如Vue Router和Vuex,它们可以扩展Vue的功能。 而3.0版本的教程则更加深入地介绍了Vue的新特性和改进。其中最重要的特性是使用了新的响应式系统,可以提高性能和开发效率。教程还包括Vue 3中的虚拟DOM、组合API、静态类型检查等内容。学习者通过这些教程可以了解如何迁移现有的Vue 2项目到Vue 3,并且可以利用新特性来构建更高效、可靠的Web应用程序。 尚硅谷的教程以系统性和实战性为核心,学习者不仅可以理论上了解Vue的各种概念和技术,还可以通过实际案例和项目实践来巩固所学知识。此外,教程提供了丰富的练习和实践任务,帮助学习者深入理解和应用所学内容。 总体而言,尚硅谷的Vue 2.0和3.0全套教程提供了全面的学习资源,使学习者能够系统地学习和掌握Vue的开发技能,从而在前端开发领域取得更大的成就。 ### 回答2: 尚硅谷是一家知名的IT教育机构,他们提供了一套完整的Vue2.0Vue3.0教程系列。 Vue是一种流行的JavaScript前端框架,它以其简洁易用和高效的特性而受到广泛的欢迎。尚硅谷的Vue教程从基础开始,逐步深入,涵盖了从Vue2.0Vue3.0的全套内容。 对于Vue初学者来说,尚硅谷的教程非常适合。他们从Vue的核心概念开始讲解,例如组件、指令、生命周期等,帮助学习者建立起对Vue的基础理论。然后他们会引导学习者通过实践项目来锻炼自己,这些项目包括购物车、社交媒体应用等。 在Vue2.0部分,尚硅谷详细介绍了Vue的基本语法、Vue组件、路由、状态管理等方面的内容。他们通过一步一步的演示和实践指导,帮助学习者掌握Vue的使用技巧和开发经验。 而在Vue3.0部分,尚硅谷更新了教程内容,包括了对Vue3.0新特性的解释和应用实例。他们介绍了Vue3.0相对于2.0的改进,例如Composition API和响应式系统的改进。通过学习Vue3.0学习者可以更好地理解和应用最新的Vue技术。 总的来说,尚硅谷的Vue2.0Vue3.0全套教程是一套系统完备的学习材料,适合初学者和有一定经验的开发者。通过学习这些教程,学习者可以全面掌握Vue的核心知识和应用技巧,进一步提升自己在前端开发领域的能力。 ### 回答3: 尚硅谷提供了全套的Vue2.0Vue3.0教程,帮助学习者全面了解和掌握Vue的相关知识和技能。 Vue2.0教程涵盖了Vue基础知识、组件化开发、路由、状态管理、Vue-cli的使用等内容。学习者可以通过该教程了解Vue的基本概念、指令、组件以及如何构建单页应用等。在Vue2.0教程中,尚硅谷以清晰的讲解和示例代码,帮助学习者逐步掌握Vue的开发技巧和最佳实践。 而Vue3.0教程则介绍了Vue3.0的全新特性与改进,如响应式、组合式API、Teleport等。学习者可以通过该教程了解Vue3.0相较于Vue2.0的重大改变和优势,以及如何从Vue2.0迁移到Vue3.0。此外,尚硅谷还会通过实际项目案例和实践演练,帮助学习者更好地理解和应用Vue3.0的新特性。 尚硅谷的教程内容通常包括视频教学、教学文档、示例代码和练习题等资源,学习者可以通过这些资源系统地学习Vue的相关知识。此外,尚硅谷还提供在线答疑和讨论交流的平台,学习者可以在学习过程中随时获得帮助与指导。 总之,尚硅谷的Vue2.0Vue3.0全套教程是一门系统且综合的学习课程,通过学习这些教程,学员可以全面了解和掌握Vue的开发技术,并能够应用到实际项目中。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值