TypeScript+Vue3最新语法糖实践

117795b116babe1aa6921ed748fbebb3.png

前言

清明3日假期对Vue3进行了较为系统的使用,本文会总结出对Vue3最新语法的实践,只会记录自己项目中使用到的语法,如果希望细致的过一遍Vue3的API,建议阅读官方文档。

对于官方文档,较好的方式是粗略过一遍官方文档,知道有这个东西,日后使用时,再回头来查阅,但前端工具之多,很多文档也读不完,此时我个人会以较新的开源项目作为学习对象,将其中使用的语法、技巧结合着文档学习。

此外感到难受的一点是,当时学React被它的Hooks恶心到了,但最近几天较为系统的了解了Vue3后,发现Vue3其实也往Hooks的路上走,当时React Hooks刚出,我就去学,除文档外,没啥资料,最终一知半解,在项目中用的少,现在Vue3已经出了一段时间了,而且国内很多资料,估计学起来,不会太费劲。

script setup语法糖

Vue3重要特点之一就是推出了Composition API写法,相比于Vue2是的Options API形式,基于Composition API组织的代码会很更加易于阅读与理解,相似功能的逻辑会放在一块,具体如下:

323d5a724c622de6ada472c38285120a.png

Vue3中通过setup函数来实现Composition API的写法,setup函数默接受props和context两个参数,其实现方式如下:

<script lang="ts">
export default {
  setup() {
    const name = "二两"
    return {
      // 需要将name暴露出去,template中才可以使用
      name
    }
  }
}
</script>

<template>
  <h1>{
   {name}}</h1>
</template>

当项目比较复杂时,setup函数必须要通过return将元素暴露出去的写法其实会比较麻烦,在Vue3.2时,推出了<script setup> 语法糖,任何在 <script setup> 声明的顶层的绑定 (包括变量,函数声明以及 import 引入的内容) 都能在模板中直接使用,例子如下:

<script setup lang="ts">
import { ref } from 'vue';
const name: string = "二两"
</script>

<template>
  <h1>{
   {name}}</h1>
</template>

此外,普通的<script>只在组件首次被引入时执行一次,而<script setup>中的代码会在组件每次实例化是都执行。

在实际使用时,我遇到的一个问题是,怎么获得旧写法(setup函数写法)中的props和emit?其中props用于获得父组件传递下的数据,emit用于将子组件的数据传递给父组件。在<script setup>中需

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

懒编程-二两

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

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

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

打赏作者

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

抵扣说明:

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

余额充值