位置: IT常识 - 正文

使用 Vue3 开发了四个月,回顾 emit 的用法(使用vue开发app)

编辑:rootadmin
使用 Vue3 开发了四个月,回顾 emit 的用法 前言:不知不觉已经从 React 转 Vue3 开发四个多月了,但其实自从刚接触 vue 开始,就对 emit 这个指令似懂非懂。所以在项目中其实我还是很害怕去使用这个指令的,但是在有些场景又不得不使用,就只能看着同事的代码比葫芦画瓢去模仿他的写法... 但是在上周封装组件的时候,leader 说可以去查阅一下 v-model 的使用,于是我重新回顾了一下 vue 官方文档的相关知识,又经过去查阅别的博文,终于明白 emit 的思想。一.React 子组件修改 props 的思想理念通过 React 的官方文档我们可以了解到 React 的哲学思想是。如果子组件希望修改希望父亲组件传递过来的 props ,那么父组件也需要同时提供修改这个 props 的方法,因为对子组件来说,props 是一个只读属性,不允许进行任何修改。(这是有意而为之的,如果 props 可以被随意修改,那么就会导致整个项目状态的混乱)这里我们引用一下 React 官方文档中关于修改水温度的例子来解释。

推荐整理分享使用 Vue3 开发了四个月,回顾 emit 的用法(使用vue开发app),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue3 key,vue3 key,vue3开发app,vue3.0开发,vue3 key,vue3开发app,vue3 key,vue3开始用了吗,内容如对您有帮助,希望把文章链接给更多的朋友!

        3.但是在某些场景中,我们在子组件中确实是需要去修改 props 的,那么这种场景该如何处理呢?

        4.这里就需要父组件在传递 props 的同时提供一个修改 props 的方法,(这个方法也是通过 props 传递的)

        5.这样做虽然有些繁琐,但是对于后期数据维护和修改代码是非常友好的,因为你可非常清楚的知道某一个 props 来自与那个父组件。

        6. 这里列举了一个简单的 demo ,大致用法如下所示:

二. Vue 子组件修改 props 的思想理念刚开始学习 vue 的时候,我有点先入为主的感觉了,感觉如果修改 props 的话,父组件就必须同时提供一个修改的方法。以为 vue 也是这样,其实也是可以的,vue 确实也可以通过 props 去同时提供这两样很重要的东西,并且功能是完全可以满足我们的需求的。

使用 Vue3 开发了四个月,回顾 emit 的用法(使用vue开发app)

        2. 但是这种想法其实和 vue 的理念有一点点违背,虽然我们都是避免了直接修改 props ,但是在 vue 里有它自己的理念。 我们先看一下 Vue 是怎么解释当子组件需要修改父组件提供的状态时的思想,最开始看到这里的时候,我其实没有特别理解画红线的意思。

        3.并且我们顺着官网的教程,去看 emit 指令的话,真的非常难以理解官方到底想表达什么想法。我承认 Vue 的中文官网也许是最适合国人学习的教程网站,但是它也有对萌新不是那么友好的地方。

        4.就像上面官网对 $emit 的解释一样,寥寥几笔,只留下我一人在风中凌乱。去搜索相关 $emit 相关的文章,有很多都是按照官网比葫芦画瓢的解释,真的非常不友好。

三. emit 的真正含义我们先看一下这个单词的原意,**“发射,发出”**的意思。这也是误导我很长时间的主要原因,因为我把这个 Vue 想表达的发射,理解成了把收到的 props 重新发射回去的意思,其实这是非常错误的理解。

        2.直到我学习了 v-model 指令的用法,我才彻底搞明白这个 “发射”,到底是想 “发射” 什么,它原来指的是 “发射” 一个修改 props 的通知,告诉父组件自己去修改 props。

        3.举个例子,我们改造一下上面我们通过传递两个 props(一个响应式状态,一个修改状态的方法)变为下面:

        4.你可以发现,原来通过 props 传递的 :addCount 变为了自定义事件 @addCount 的写法。

        5.⏰重点来了: 我相信很多初学者在看到父组件自定义一个事件这一章节的时候,会产生很大的疑问。其实这里 Vue 想表达的意思是,父组件注册了一个函数,但是它不会自己去执行这个函数,它需要收到一个信号才会自己去执行。什么叫注册了一个函数呢?说白了,就是它在自己本身组件内部定义了一个函数,但是这个函数在没有收到 “信号的时候是不会去执行的”。

        6.如果你能明白上一段的意思,那么你基本上就知道 “信号” 究竟是谁发出来的了。让我们回到子组件内部,在子组件内,我们需要去拿到父组件注册的那个函数名字。也就是addCount,来准备通知父组件。

        7.子组件内的按钮代表的意思就是,当我点击一次按钮,我就 “发射” 一个信号,告诉父组件去执行一次 addCount 这个函数,也就是在父组件里

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

上一篇:JS——正则表达式(超详细)(js正则用法)

下一篇:如何利用Linux命令检查和对比两个文件内容区别(linux如何使用)

  • 华为平板如何设置学生模式(华为平板如何设置返回键)

    华为平板如何设置学生模式(华为平板如何设置返回键)

  • 小米妙享功能怎么使用的呢(小米妙享功能怎么关闭)

    小米妙享功能怎么使用的呢(小米妙享功能怎么关闭)

  • 美版iphonexr双卡双待吗(美版iphonexr双卡还是单卡)

    美版iphonexr双卡双待吗(美版iphonexr双卡还是单卡)

  • iphone11锁屏发红(iphone11锁屏瞬间发红)

    iphone11锁屏发红(iphone11锁屏瞬间发红)

  • 天猫超市生鲜怎么没了(天猫超市生鲜去哪了)

    天猫超市生鲜怎么没了(天猫超市生鲜去哪了)

  • 全民k歌送的k币怎么撤回(全民k歌送的k币怎么领取)

    全民k歌送的k币怎么撤回(全民k歌送的k币怎么领取)

  • qq打什么字会掉下表情(qq打什么字会出现满屏特效)

    qq打什么字会掉下表情(qq打什么字会出现满屏特效)

  • 微信账号突然不存在了,登录不了(微信账号突然不能用了怎么回事)

    微信账号突然不存在了,登录不了(微信账号突然不能用了怎么回事)

  • vivox30卡槽在哪里(vivox30卡槽图片)

    vivox30卡槽在哪里(vivox30卡槽图片)

  • 新开网店没有访客也没有销量怎么办(网店没有人访问怎么办)

    新开网店没有访客也没有销量怎么办(网店没有人访问怎么办)

  • 微信朋友圈背景怎么恢复默认(微信朋友圈背景图可以不让别人看到么)

    微信朋友圈背景怎么恢复默认(微信朋友圈背景图可以不让别人看到么)

  • 华为耳机充电盒充不进去电(华为耳机充电盒怎么拆开)

    华为耳机充电盒充不进去电(华为耳机充电盒怎么拆开)

  • 内存和光盘属于什么媒体(内存与光盘的主要差别)

    内存和光盘属于什么媒体(内存与光盘的主要差别)

  • 华为matebook14和xpro区别

    华为matebook14和xpro区别

  • 微信二维码名片有效期(微信二维码名片会变吗)

    微信二维码名片有效期(微信二维码名片会变吗)

  • 此类视频文件不受支持是怎么回事(此类视频文件不受支持是什么意思)

    此类视频文件不受支持是怎么回事(此类视频文件不受支持是什么意思)

  • 1.5aaa是几号电池(1.5伏aaa是几号电池)

    1.5aaa是几号电池(1.5伏aaa是几号电池)

  • qq空间隐身访问会出现浏览吗(qq空间隐身访问怎么破解)

    qq空间隐身访问会出现浏览吗(qq空间隐身访问怎么破解)

  • iphone11没有指纹吗(苹果11手机没有指纹识别功能吗?)

    iphone11没有指纹吗(苹果11手机没有指纹识别功能吗?)

  • vivox30pro什么时候发布(新款vivox30pro)

    vivox30pro什么时候发布(新款vivox30pro)

  • 抖音看过的视频怎么找足迹(抖音看过的视频推荐给朋友怎么关闭)

    抖音看过的视频怎么找足迹(抖音看过的视频推荐给朋友怎么关闭)

  • 华为p9电池断崖掉电解决方法(华为p9电池不耐用解决办法)

    华为p9电池断崖掉电解决方法(华为p9电池不耐用解决办法)

  • qq语音自动翻译怎么关(qq聊天自动翻译)

    qq语音自动翻译怎么关(qq聊天自动翻译)

  • 在计算机上on/c叫什么(在计算机上onc是什么键)

    在计算机上on/c叫什么(在计算机上onc是什么键)

  • 小米平板4怎么打电话(小米平板4怎么投屏到电视上)

    小米平板4怎么打电话(小米平板4怎么投屏到电视上)

  • delete和truncate差别(简述delete与truncate的区别)

    delete和truncate差别(简述delete与truncate的区别)

  • 菜鸟驿站如何盈利(菜鸟驿站收益如何)

    菜鸟驿站如何盈利(菜鸟驿站收益如何)

  • STM32CubeIDE开发(三十一), stm32人工智能开发应用实践(Cube.AI).篇一(stm32cubeIDE开发串口 修改速率)

    STM32CubeIDE开发(三十一), stm32人工智能开发应用实践(Cube.AI).篇一(stm32cubeIDE开发串口 修改速率)

  • 增值税留抵抵欠情况说明怎么写
  • 支付宝如何缴纳车辆购置税
  • 期末留抵税额怎么算开票金额
  • 驾驶培训 增值税
  • 增值税小规模纳税人购进货物支付的增值税直接计入
  • 销售材料的会计分录在实务第几章节
  • 土地摊销全部计入成本吗
  • 自然人报税系统怎么进入单位报税系统
  • 资金账簿减半征收印花税财税2018 50号
  • 生产成本月末结转到本年利润里吗
  • 固定资产账面价值公式
  • 房地产开发企业增值税税率
  • 研发废料收入抵研发
  • 工资薪酬所得税税率
  • 何为提租补贴
  • 通行费发票如何开具
  • 物业管理提供的服务变化
  • 商会会费收入要交所得税吗
  • 房产税缴纳时间规定
  • 国税定额发票有效期是多长时间
  • 通用申报表个人所得税应税项怎么填
  • 预付账款需要发票吗
  • 购买国债利息收入计入利润总额吗
  • 小规模租赁收入申报流程
  • 金税盘发票显示不出确认
  • 小规模通行费发票可以抵扣吗
  • 收到客户赔偿款计入什么科目
  • 资产负债表期初和期末指的是什么
  • 王者荣耀中程咬金的克星是谁
  • 培训机构开办资金
  • 房屋及建筑物改造费用
  • msp 什么意思
  • php url编码转换
  • yii2框架优秀在哪里
  • 应收账款净额可以是负数吗
  • 葡萄酒企业已纳税多少
  • 发行股票的手续费佣金计入什么科目
  • web攻防之业务安全实战指南
  • 圣米歇尔山法语介
  • 失控发票成本转出怎么做账
  • 投资公司取得的发票
  • json有几种基本结构
  • 付报刊费计入什么科目
  • 研发支出相关科目
  • 预收账款的借贷方向是加还是凿
  • 什么情况下开劳务费发票
  • CINLINELE工具
  • 微擎框架可以干什么
  • 供热管道属于什么结构类型
  • 企业所得税会计利润总额计算公式
  • 期权费的合理范围计算
  • 上期有留抵进项税额,本期如何申报
  • 租赁公司异地经营
  • 已认证抵扣的发票如何做账
  • 周转材料包装物的账务处理
  • 非限定性净资产属于什么科目
  • 投资收益的账务怎么处理
  • 会计凭证装订时间法律规定
  • 生产型企业电费会计分录
  • 其他流动资产为什么包括应交增值税
  • sqlserver 字符串包含
  • sql中的join
  • macos邮件
  • sdis.exe
  • 系统导航栏已禁用怎么办
  • win10开机提示xwz
  • 返回场景和音乐的区别
  • linux文件目录管理命令
  • android反编译smali
  • 百度关键词设置
  • dos命令显示时间
  • jquery(document).ready
  • shell脚本实现自动化巡检报警发送邮箱
  • idea 分析源码
  • javascript 拖拽
  • android 属性动画改变view大小
  • js跨域的几种方法
  • 资源税选矿和原油的区别
  • 个人所得税完税证明图片
  • 我国国家宪法日是每年的十二月几日
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设