位置: IT常识 - 正文

vue3.0中setup使用(两种用法)(vue set up)

编辑:rootadmin
vue3.0中setup使用(两种用法)

推荐整理分享vue3.0中setup使用(两种用法)(vue set up),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue setup ref,vue3.0的setup()函数,vue3 setup有什么用,vue3 setup作用,vue3 setup script,vue setup ref,vue3.0 setup,vue3.0 setup,内容如对您有帮助,希望把文章链接给更多的朋友!

         这篇文章主要介绍了vue3.0中setup使用,本文通过两种用法给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

一、setup函数的特性以及作用

  可以确定的是 Vue3.0 是兼容 Vue2.x 版本的 也就是说我们再日常工作中 可以在 Vue3 中使用 Vue2.x 的相关语法 但是当你真正开始使用 Vue3 写项目时 你会发现他比 Vue2.x 方便的多

  Vue3 的一大特性函数 ---- setup

  1、setup函数是处于 生命周期函数 beforeCreate 和 Created 两个钩子函数之间的函数 也就说在 setup函数中是无法 使用 data 和 methods 中的数据和方法的

  2、setup函数是 Composition API(组合API)的入口

  3、在setup函数中定义的变量和方法最后都是需要 return 出去的 不然无法再模板中使用

二、setup函数的注意点:

  1、由于在执行 setup函数的时候,还没有执行 Created 生命周期方法,所以在 setup 函数中,无法使用 data 和 methods 的变量和方法

  2、由于我们不能在 setup函数中使用 data 和 methods,所以 Vue 为了避免我们错误的使用,直接将 setup函数中的this修改成了 undefined

  3、setup函数只能是同步的不能是异步的

用法1:结合ref使用

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

<template>

 <div id="app">

  {{name}}

  <p>{{age}}</p>

  <button @click="plusOne()">+</button>

 </div>

</template>

<script>

import {ref} from 'vue'

export default {

 name:'app',

 data(){

  return {

   name:'xiaosan'

  }

 },

 setup(){

  const name =ref('小四')

  const age=ref(18)

  function plusOne(){

   age.value++ //想改变值或获取值 必须.value

  }

  return { //必须返回 模板中才能使用

   name,age,plusOne

  }

vue3.0中setup使用(两种用法)(vue set up)

 }

}

</script>

用法2:代码分割

Options API 和 Composition API 

Options API 约定:

我们需要在 props 里面设置接收参数

我们需要在 data 里面设置变量

我们需要在 computed 里面设置计算属性

我们需要在 watch 里面设置监听属性

我们需要在 methods 里面设置事件方法

你会发现 Options APi 都约定了我们该在哪个位置做什么事,这反倒在一定程度上也强制我们进行了代码分割。

现在用 Composition API,不再这么约定了,于是乎,代码组织非常灵活,我们的控制代码写在 setup 里面即可。

setup函数提供了两个参数 props和context,重要的是在setup函数里没有了this,在 vue3.0 中,访问他们变成以下形式: this.xxx=》context.xxx

我们没有了 this 上下文,没有了 Options API 的强制代码分离。Composition API 给了我们更加广阔的天地,那么我们更加需要慎重自约起来。

对于复杂的逻辑代码,我们要更加重视起 Composition API 的初心,不要吝啬使用 Composition API 来分离代码,用来切割成各种模块导出。

我们期望是这样的:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

importuseAfrom'./a';

importuseBfrom'./b';

importuseCfrom'./c';

exportdefault{

 setup (props) {

 let{ a, methodsA } = useA();

 let{ b, methodsB } = useA();

 let{ c, methodsC } = useC();

 return{

   a,

    methodsA,

    b,

    methodsB,

    c,

    methodsC

  }

 }

}

就算 setup 内容代码量越来越大,但是始终围绕着大而不乱,代码结构清晰的路子前进。

本文链接地址:https://www.jiuchutong.com/zhishi/297268.html 转载请保留说明!

上一篇:vue踩坑--background-image路径问题(vue backbone)

下一篇:JavaScript实现留言板(javascript保留字有哪些)

  • oppo怎么关闭病毒警告弹窗(oppo怎么关闭病毒和威胁防护)

    oppo怎么关闭病毒警告弹窗(oppo怎么关闭病毒和威胁防护)

  • arm32位和64位的区别

    arm32位和64位的区别

  • 苹果手机壁纸怎么恢复成原来的(苹果手机壁纸怎么是模糊的)

    苹果手机壁纸怎么恢复成原来的(苹果手机壁纸怎么是模糊的)

  • 音响进水了怎么办(音响进水后有吱吱的声音怎么解决)

    音响进水了怎么办(音响进水后有吱吱的声音怎么解决)

  • 路由器不放在弱电箱怎么组网(路由器不放在弱电箱)

    路由器不放在弱电箱怎么组网(路由器不放在弱电箱)

  • 8p尺寸长宽多少厘米(8p多长多宽)

    8p尺寸长宽多少厘米(8p多长多宽)

  • 苹果手机隔空传送不了怎么回事(苹果手机隔空传送一直都在等待中)

    苹果手机隔空传送不了怎么回事(苹果手机隔空传送一直都在等待中)

  • 华为p40怎么返回上一步(华为p40怎么返回上一层)

    华为p40怎么返回上一步(华为p40怎么返回上一层)

  • 投屏能倍速播放吗(投屏倍速播放怎么关)

    投屏能倍速播放吗(投屏倍速播放怎么关)

  • 华为p30闪退是怎么回事(华为p30出现闪退怎么办?)

    华为p30闪退是怎么回事(华为p30出现闪退怎么办?)

  • 爱奇艺pc网页端是什么(爱奇艺pc网页端打不开)

    爱奇艺pc网页端是什么(爱奇艺pc网页端打不开)

  • 色彩范围命令可以创建选区吗(色彩范围命令可根据图像的颜色范围创建选区)

    色彩范围命令可以创建选区吗(色彩范围命令可根据图像的颜色范围创建选区)

  • 笔记本换行键在哪里(笔记本换行是哪个快捷键)

    笔记本换行键在哪里(笔记本换行是哪个快捷键)

  • 荣耀magic2的隐藏功能(荣耀magic2怎么隐藏图标)

    荣耀magic2的隐藏功能(荣耀magic2怎么隐藏图标)

  • 微信正在输入怎么开启(微信正在输入怎么退出)

    微信正在输入怎么开启(微信正在输入怎么退出)

  • iphone x 怎么显示百分比(iphonex怎么显示电池电量百分比)

    iphone x 怎么显示百分比(iphonex怎么显示电池电量百分比)

  • 苹果xsmax有指纹解锁么(苹果xsmax有指纹识别功能吗)

    苹果xsmax有指纹解锁么(苹果xsmax有指纹识别功能吗)

  • 电脑下面怎么不显示(电脑下面怎么不显示图标了)

    电脑下面怎么不显示(电脑下面怎么不显示图标了)

  • 如何自己换盖板(怎么自己换盖板)

    如何自己换盖板(怎么自己换盖板)

  • 抖音测相似度怎么拍(抖音上相似度照片怎么变化的)

    抖音测相似度怎么拍(抖音上相似度照片怎么变化的)

  • 为什么搜不到蓝牙耳机(为什么搜不到蓝牙鼠标设备)

    为什么搜不到蓝牙耳机(为什么搜不到蓝牙鼠标设备)

  • 凤尾蕨的养殖方法和注意事项(凤尾蕨的养殖方法)

    凤尾蕨的养殖方法和注意事项(凤尾蕨的养殖方法)

  • 圣安德鲁斯湾岸边的三只王企鹅,南乔治亚岛 (© Paul Souders/Getty Images)(圣安德鲁斯市)

    圣安德鲁斯湾岸边的三只王企鹅,南乔治亚岛 (© Paul Souders/Getty Images)(圣安德鲁斯市)

  • 小规模纳税人的认定标准是什么
  • 增值税交多少怎么查询
  • 实际开票金额和申报金额不符
  • 企业信用公示的时效是多久
  • 单位买了一批空调怎么办
  • 年终奖影响社保公积金基数吗
  • 开票个人账户的钱怎么查
  • 投资收益企业所得税优惠政策
  • 票面3个点的增值税发票是交几个点的税金
  • 银行存款可以红字吗
  • 固定资产成本包括包装费吗
  • 电子设备税费
  • 子公司注销欠母公司借款怎么办
  • 小规模装饰公司干150万的活开专票需要多少钱
  • 普通发票税率为1%吗
  • 湖北个体户网上申报
  • 分公司负债,总公司要负担
  • 土地作价入股政策
  • 农产品购货发票
  • 有哪些凭证
  • 个人转让股权的合理费用都有哪些
  • 电脑怎么搜索文档
  • 实收资本怎么用
  • PHP:oci_password_change()的用法_Oracle函数
  • 宏基笔记本一键恢复系统
  • 期间费用属于间接生产费用吗
  • 从银行提取现金准备发放工资
  • php文件上传用什么请求方法
  • php流程引擎
  • laravel常用命令
  • 单位专项资金使用管理规
  • Yii2中简单的场景使用介绍
  • promise基本使用
  • python集合的并集符号语言
  • 公司以现金形式发工资的最好解释
  • 税控盘没交年费会怎么办
  • 对公银行卡账户
  • mysql的基本介绍
  • 医用耗材税率是多少
  • 没有以前年度损益科目应该加在什么地方
  • 公对私转账交税
  • 公司收到银行发放贷款会计分录
  • 技术人员工资计入什么科目
  • 合作社注销麻烦吗
  • 低值易耗品一次性摊销会计科目
  • 出差补助办法
  • 代理记账服务业务内容
  • 银行代发工资业务收费吗
  • 销项发票能不能退税
  • 税务局退以前年度的税款怎样记账
  • 金税盘发票全额抵扣如何做账
  • 期后事项的分类及处理原则
  • 存货科目包括哪几类
  • mysql查询条件不区分大小写
  • docker镜像包含什么
  • win7系统设备管理器其他设备有个未知设备叹号
  • 重装系统需要主机吗
  • windows中输入法的安装步骤
  • 删掉sam文件后无法开机
  • 怎么激活win7旗舰版系统
  • windows10窗口设置在哪
  • 搭建android开发环境需要用到哪些工具
  • js观察者模式和发布订阅
  • unity打包安卓apk
  • nodejs异步处理执行顺序
  • linux 编译
  • 浅谈python
  • unity3d Human skin real time rendering plus 真实模拟人皮实时渲染 plus篇
  • 可输入文字查找的软件
  • shell忽略大小写
  • monkey命令大全
  • unity2020怎么导入资源
  • python接口编写
  • js判断页面是否打开
  • jquery悬浮显示
  • 现在是一般纳税人,属于小规模发生的业务怎么开票
  • 济南个税起征点是多少2021
  • 矿产资源税怎样征收
  • 安徽工作人员出差费用标准
  • 税控软件怎么升级到新版本
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设