当前位置: 首页 > news >正文

Vue3 setup语法糖

- 理解:Vue3.0中一个新的配置向,值为一个函数

- setup是所有Composition API(组合API) ”表演的舞台“

- 组件中所有用到的:数据、方法等等,均要配置在setup中

- setup函数的两种返回值:

  - 若返回一个对象,则对象中的数据、方法、在模板中均可直接使用(重点)

 1、setup() 这个函数内部的变量/函数是局部的

2、这个函数的返回值,可以被当前组件的任意地方使用

3、这个函数内部不要使用this来操作组件数据

4、setup在组件加载期间只有运行一次,从创建到销毁只运行一次

setup 函数的语法糖

setup属性,会让打包工具打包时,直接帮我们把setup函数内部声明的变量/函数 return,然后组件就可以用了

<script setup>  </script>

<template><div class="home"><h1>显示vue3.0的数据和方法</h1><h2>姓名:{{name}}</h2><h2>年龄:{{age}}</h2><button @click="sayName()">点击测试vue3.0的方法</button></div>
</template><script>export default {setup() {// 现在暂时还不考虑响应式数据的问题// 数据 let name = "李国栋";let age = 18;// 方法let sayName = function () {console.log(`我的名字是${name},我的年龄是${age}`);}return {name, age, sayName}}}
</script>

若返回一个渲染函数,则可以自定义渲染内容(了解)

//页面中会显示一个h1标签,标签的内容是"vue3返回渲染函数"
<script>
import {h} from 'vue'
export default {setup() {// 返回一个渲染函数// h相当于document.CreateElement()return ()=>{return h("h1","vue3返回渲染函数")}}
}
</script>

注意点
- 尽量不要和Vue2.x配置混用
- Vue2.x配置(data,methods,computed......)中可以访问setup中的属性,方法
- 但在setup中不能访问到Vue2.x配置(data,methods,computed......)
- 如有重名,setup优先
- setup不能是一个async函数,因为返回值不再是return的对象,而是Promise,模板看不到return对象中的属性

相关文章:

  • 用Java写一个王者荣耀游戏
  • 用C++和python混合编写数据采集程序?
  • 【1day】华天软件 OAworkFlowService接口SQL注入漏洞学习
  • 基于英特尔平台及OpenVINO2023工具套件优化文生图任务
  • MongoDB的原子性和多文档事务处理
  • 如何绕过某讯手游保护系统并从内存中获取Unity3D引擎的Dll文件
  • ChatGPT 的 18 种玩法,你还不会用吗?
  • 计算机组成学习-数据的表示和运算总结
  • 【服务部署】常用内网穿透方案
  • 【深度学习实验】图像处理(四):PIL——自定义图像数据增强操作(图像合成;图像融合(高斯掩码))
  • Xshell全局去除提示音
  • 阿里云ACE认证之国际版与国内版对比!
  • Java数据结构之《构造哈夫曼树》题目
  • 使用FFmpeg开发2-比特流过滤器
  • 解决浏览器缓存问题
  • [分享]iOS开发-关于在xcode中引用文件夹右边出现问号的解决办法
  • 【162天】黑马程序员27天视频学习笔记【Day02-上】
  • CSS居中完全指南——构建CSS居中决策树
  • dva中组件的懒加载
  • interface和setter,getter
  • JAVA并发编程--1.基础概念
  • Material Design
  • MySQL Access denied for user 'root'@'localhost' 解决方法
  • mysql外键的使用
  • npx命令介绍
  • October CMS - 快速入门 9 Images And Galleries
  • PHP 小技巧
  • SOFAMosn配置模型
  • SpriteKit 技巧之添加背景图片
  • windows下使用nginx调试简介
  • yii2中session跨域名的问题
  • 笨办法学C 练习34:动态数组
  • 不发不行!Netty集成文字图片聊天室外加TCP/IP软硬件通信
  • 不用申请服务号就可以开发微信支付/支付宝/QQ钱包支付!附:直接可用的代码+demo...
  • 持续集成与持续部署宝典Part 2:创建持续集成流水线
  • 来,膜拜下android roadmap,强大的执行力
  • 前端技术周刊 2019-01-14:客户端存储
  • 深入体验bash on windows,在windows上搭建原生的linux开发环境,酷!
  • 使用Envoy 作Sidecar Proxy的微服务模式-4.Prometheus的指标收集
  • 使用Maven插件构建SpringBoot项目,生成Docker镜像push到DockerHub上
  • 说说动画卡顿的解决方案
  • 思否第一天
  • 学习笔记TF060:图像语音结合,看图说话
  • 阿里云ACE认证之理解CDN技术
  • ​软考-高级-系统架构设计师教程(清华第2版)【第20章 系统架构设计师论文写作要点(P717~728)-思维导图】​
  • #if 1...#endif
  • #pragma multi_compile #pragma shader_feature
  • (02)Cartographer源码无死角解析-(03) 新数据运行与地图保存、加载地图启动仅定位模式
  • (附源码)spring boot公选课在线选课系统 毕业设计 142011
  • (免费领源码)python#django#mysql公交线路查询系统85021- 计算机毕业设计项目选题推荐
  • (深度全面解析)ChatGPT的重大更新给创业者带来了哪些红利机会
  • (转)http协议
  • .locked1、locked勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
  • .net 流——流的类型体系简单介绍
  • .net项目IIS、VS 附加进程调试