vue3学习(第二天)

一、vscode创建vue3模板

1.打开vscode点击左下角设置按钮,点击配置用户代码片段

在这里插入图片描述

2.点击vue.json,把模板输入。

在这里插入图片描述

在这里插入图片描述

   "Create Vue3 template":{
      "prefix": "vue3",
      "body": [
        "<template>",
        "",
        "<div></div>",
        "",
        "</template>",
        "",
        "<script setup lang='ts'>",
        "import { ref , reactive } from 'vue'",
        "",
        "</script>",

        "<style scoped>",
        "",
        "</style>",
      ],
      "description": "Create VUE3 template"
    }

完成后在新建vue页面中输入vue3回车即可自动生成vue3模板。

二、响应式基础(ref()和reactive())

在vue3中,所有被ref()或者reactive()包裹的东西才是响应式的。

1.ref()函数

ref() 方法允许我们创建可以使用任何值类型的响应式 ref:
在这里插入图片描述
在没有引用ref()时,点击按钮想要修改count值会发现页面内容没有变化。
在引用ref()时
在这里插入图片描述
可以看到成功修改,而且count的值是一个ref对象,需要使用count.value才会选到值。
ref()还可以获取dom元素:
在这里插入图片描述

2.reactive()

仅对对象类型有效(对象、数组和 Map、Set 这样的集合类型),而对 string、number 和 boolean 这样的 原始类型 无效。
在这里插入图片描述
reactive取值赋值不需要.value,可以直接取值赋值。
值得注意的是,reactive()是一个Proxy对象,不能直接赋值,否则会破坏响应对象,可以使用push。
在这里插入图片描述
在这里插入图片描述

三、computed计算属性

vue3中的computed属性需要import才可以使用,写法与vue2类似:
在这里插入图片描述

四、watch侦听器

在组合式 API 中,我们可以使用 watch 函数在每次响应式状态发生变化时触发回调函数。
watch()函数可以直接侦听ref、reactive、或多个数据源等。

1.侦听一个ref():

在这里插入图片描述

2.侦听多个时使用数组:

在这里插入图片描述

3.深层侦听

当出现这种好几层的对象时ref()会出现无法侦听但是reactive会正常侦听:
在这里插入图片描述
在这里插入图片描述
此时ref()侦听后加入deep选项即可:
在这里插入图片描述

如果要监听单一值时需要注意把值变成一个函数:
在这里插入图片描述
watch 默认是懒执行的:仅当数据源变化时,才会执行回调。但在某些场景中,我们希望在创建侦听器时,立即执行一遍回调。举例来说,我们想请求一些初始数据,然后在相关状态更改时重新请求数据。

我们可以通过传入 immediate: true 选项来强制侦听器的回调立即执行:

watch(source, (newValue, oldValue) => {
  // 立即执行,且当 `source` 改变时再次执行
}, { immediate: true })

五、watchEffect高级侦听器

watchEffect()函数在进入页面时回调会立即执行一次,不需要指定 immediate: true。在执行期间,它会自动追踪 .value 作为依赖(和计算属性类似)。每当 .value 变化时,回调会再次执行。
在这里插入图片描述

停止侦听器

要手动停止一个侦听器,请调用 watch 或 watchEffect 返回的函数:

const unwatch = watchEffect(() => {})

// ...当该侦听器不再需要时
unwatch()
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

别出声~~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值