Vue

【vue3】setup的使用与原理解析

03-19 11:20

setup概述

setup 是 vue3 中的一个新配置项,值是一个函数,它与 Composition API 深度绑定,组件中所用到的:数据、方法、计算属性、监视......等,均配置在 setup 中。

setup 的特点如下:

  • setup 函数返回的对象中的内容,可直接在模板中使用。
  • setup 中访问 this 可能会提示 undefined,不推荐使用 this。
  • setup 函数会在 beforeCreate 之前调用,它是“领先”所有钩子执行的。


setup的返回值

若返回一个对象:则对象中的:属性、方法等,在模板中均可以直接使用(如上所示)。

返回一个函数:则可以自定义渲染内容,代码如下:


setup 与 Options API 的关系

Vue2 的配置(data、methos......)中可以访问到 setup 中的属性、方法,但在 setup 中不能访问到 Vue2 的配置(data、methos......)。如果与 Vue2 冲突,则 setup 优先


setup语法糖

setup函数有一个语法糖,这个语法糖,可以让我们把setup独立出去,代码如下:

上述代码,还需要编写一个不写setup的script标签,去指定组件名字,比较麻烦,可以借助 vite 中的 vite-plugin-vue-setup-extend 插件简化,安装命令:

npm i vite-plugin-vue-setup-extend -D

安装后编辑配置文件 vite.config.ts,添加如下配置:

配置完成后,可在组件内的 script 标签中,通过 name 指定组件名称,省去单独定义 script 的代码


微信小程序
大潇博客 版权所有 Copyright ©2016~2026
京ICP备17004217号-6  合作QQ:284710375
天玺科技