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

VUE3的setup函数

文章目录

目录

文章目录

前言

一、setup函数是什么?

二、使用步骤

三、vue3中文文档和面向vue3的组件库

总结



前言

Vue3是一个面向数据驱动的渐进式JavaScript框架,其的设计理念包括简洁、灵活和高效。相比Vue2,Vue3的架构设计有很大的不同,其中包括响应式系统的重写、虚拟DOM的改进以及Composition API 的引入等等。Vue3的性能得到了显著提升,同时也提供了更多的优化选项,例如Tree-Shaking和Teleport组件等。

同时,Vue3也更好地支持TypeScript,并且推出了一些新的API和全局指令,使得开发更加方便和灵活。Vue3的出现对企业级开发和前端开发者都具有一定的意义和价值。


一、setup函数是什么?

在Vue3中,setup函数是一个新特性,用于编写组件逻辑。它是Composition API 的一部分,用于解决Vue2中一些复杂组件难以维护和理解的问题。通过使用Vue3的setup函数,可以更好地组织代码,提高代码可读性和可维护性。

setup函数在组件实例化时执行,该函数会先于beforeCreate钩子函数执行。在setup函数中,我们可以使用诸如ref、reactive等API来声明响应式数据,并且还可以使用computed、watch等API定义计算属性和监听响应式数据的变化。

此外,在setup函数中还可以定义需要暴露给模板的数据或方法,这些数据和方法都可以直接在模板中使用。

需要注意的是,setup函数在组件实例化之前就已经运行,而且所有的响应式数据都是在创建组件之前被创建的,因此在setup函数中不能访问this。另外,props也是响应式数据,但在setup函数中无法直接访问props,需要通过参数传入。

二、使用步骤

<template><div><p>count: {{ count }}</p><el-button type="danger" @click="increment">危险按钮</el-button><el-button type="danger" @click="fetchData">测试axios</el-button></div></template><script>// 在Vue3中,ref是一个响应式数据类型,用于声明一个普通类型的数据,// 并且可以在模板中以响应式的方式使用。// ref将基础类型的数据(如数字、字符串等)// 转换为一个带有.value属性的响应式对象,在更新数据时需要修改.value属性的值。import { ref } from 'vue';// 根据实际路径引入 Axios 实例import axios from '@/utils/axios';export default {name: "TestPage",/*vue2 使用data+created* vue3可以 使用setup等价于data+created* */setup() {// 声明响应式数据const count = ref(0);// 定义需要暴露给模板的方法const increment = () => {count.value++;};let fetchData=()=>{axios.get('/data').then(response => {// 处理响应数据console.log(response.data);}).catch(error => {// 处理错误console.error(error);});};// 返回一个包含需要暴露给模板的数据或方法的对象return {count,increment,fetchData,};}}
</script><style scoped></style>

三、vue3中文文档和面向vue3的组件库

中文文档简介 | Vue.js

组件库面向 Vue3 的 Material 风格移动端组件库


总结

待补充

http://www.lryc.cn/news/59319.html

相关文章:

  • 停车场管理系统文件录入(C++版)
  • 线程(Thread)的三种等待唤醒机制详解
  • 从零学习python - 13模块的导入与使用(实现单例模式)
  • 国产SSD、内存卷哭国外大厂,三星宣布减产涨价在路上了
  • 数据库管理-第六十六期 SQL Domain(20230413)
  • 《Vue3实战》 第一章 nods/npm安装、配置
  • JAVA练习104-四数相加 II
  • 【C++基础】引用(引用的概念;引用的特性;常引用;使用场景:做输出型参数、大对象传参、做输出型返回值、返回大对象的引用);引用和指针的区别)
  • Redis只用来做缓存?来认识一下它其他强大的能力吧。
  • 【ES】数据同步集群
  • 37岁男子不愿熬夜,回乡养鸡每天准时下班,青山绿水中养鸡,直播间里卖鸡蛋...
  • 深度学习和人工智能之间是什么样的关系?
  • 实战打靶集锦-016-lampiao
  • 《Web前端应用开发》考试试卷(模拟题)
  • 【react全家桶学习】react简介
  • 此战成硕,我成功上岸西南交通大学了~~~
  • 光耦继电器工作原理及优点概述
  • 【Mysql】mysql8.0.26解压包部署方式
  • 进销存管理系统能为企业带来哪些实际效益?
  • 图片怎么转换成pdf格式?这几个方法帮你一键转换
  • 数据结构exp1_2学生成绩排序
  • 在DongshanPI-D1开箱使用分享与折腾记录实现MPU6050数据读取
  • Nature子刊 定制饮食去除半胱氨酸和蛋氨酸可诱导细胞自毁进而治疗脑瘤?
  • 抛弃 TCP 和 QUIC 的 HTTP
  • 未来公寓智能化设计平台项目(下)
  • 常见分布式消息队列综合对比
  • 怎么邀请主流媒体到现场报道
  • 2023年最强手机远程控制横测:ToDesk、向日葵、Airdroid三款APP免Root版本
  • 用SQL语句操作oracle数据库--数据查询(上篇)
  • 模板学堂|DataEase图表样式解析