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

建设部网站如何登录监理工程师建百度网站

建设部网站如何登录监理工程师,建百度网站,网络科技公司网站源码,免费网站建设平台哪个好文章目录前情回顾前言1. 父组件 子组件通讯传递2. 子组件 父组件通讯传递3. 爷孙组件#xff0c;后代组件通讯数据总结前情回顾 在本专栏前一章节中#xff0c;我为大家带来了 Vue3 新特性变化上手指南 的归纳梳理#xff0c;主要介绍了 Vue3 的 Proxy 响应式原理… 文章目录前情回顾前言1. 父组件 子组件通讯传递2. 子组件 父组件通讯传递3. 爷孙组件后代组件通讯数据总结前情回顾 在本专栏前一章节中我为大家带来了 Vue3 新特性变化上手指南 的归纳梳理主要介绍了 Vue3 的 Proxy 响应式原理和 Setup Composition API的介绍以及围绕在 Setup Composition API基础上的 一些新特性 API 方法后续我会在此基础上为大家带来 Vue3 中常见的 一些 API 方法 和新特性知识点 开设单独的章节讲解。 前言 大家众所周知Vue 是一个 拥有组件化编程思想的框架整个项目程序是由一个一个的 组件块 堆积而成但是由于 每一个 组件在项目 结构上是完全独立的但是有时候我们会面临到的需求是多个组件之间需要进行数据的交互也就是说 A 组件里面的数据需要传递给 B 组件甚至也可能传递给更加嵌套深层次的 C组件D组件等… 那么在 Vue3 中 如何去 实现这些功能也就是本章节我要为大家带来的内容 同样在之前 我为大家带来过一期关于在 Vue2 中如何实现 各级组件之间数据通讯的章节讲解如果有想要了解 在Vue2 中 如何去实现组件之间的 通讯 请点击传送门 Vue2 中的 各级组件通讯 1. 父组件 子组件通讯传递 父组件中 还是和 之前 Vue2 中一样 通过在 子组件 标签上配置自定义属性来传递参数 templatediv classhomeh1我是父组件/h1h4这是将要传给子组件的数据 {{ name }}/h4HelloWorld :namedataname/HelloWorld/div /templatescript setupimport { ref, defineProps, reactive } from vue import HelloWorld from ../../../components/HelloWorld.vuelet name ref(你好,vue) /script子组件中 子组件中 接收 Props 参数 Vue 提供了一个 新的 API 函数 defineProps() 其使用的方法就和我们在 Vue2 的子组件中 定义 Props 待接收参数配置一样。 这里需要注意的是如果我们需要 在 JS 模块中 用到 传递过来的参数 直接打印会报错虽然在模板中可以直接使用但是在 JS 模块中我们需要 定义一个 变量 来接收 defineProps() 的返回值然后再从返回值身上读取。 templatediv classHelloWorldh5我是子级组件/h5h4我接收到父组件的 数据 {{ namedata }}/h4/div /templatescript setup import { defineProps } from vue let receiveProps defineProps({namedata: {type: String,required: true, // 是否必传default: 备用数据, //默认数据} }) console.log(namedata); //会报错 console.log(receiveProps.namedata); //不报错/script方式二 如果 你没有 使用 script setup Vue3 的语法糖来进行 JS代码块的编写那么 Setup 函数会接收两个参数第一个参数就是组件的 Props传递过来的参数。和标准的组件一致Setup 函数的 Props 是响应式的并且会在传入新的 Props 时同步更新。 子组件 templatediv classHelloWorldh5我是子级组件/h5h4我接收到父组件的 数据 {{ props.namedata }}/h4/div /templatescript export default {props: {namedata: {type: String,required: true, // 是否必传default: 备用数据, //默认数据}},setup(props, context) {console.log(props.namedata, context);return {props}} } /script这里需要注意 如果你解构了 Props 对象解构出的变量将会丢失响应性。因此我们推荐通过 props.xxx 的形式来使用其中的 props。 如果你确实需要解构 Props 对象或者需要将某个 Prop 传到一个外部函数中并保持响应性那么你可以使用 toRefs() 和 toRef() 这两个工具函数 import { toRefs, toRef } from vue export default {setup(props) {// 将 props 转为一个其中全是 ref 的对象然后解构const { title } toRefs(props)// title 是一个追踪着 props.title 的 refconsole.log(title.value)// 或者将 props 的单个属性转为一个 refconst title toRef(props, title)} }2. 子组件 父组件通讯传递 子组件中: 在过去Vue 2中我们是通过 this.$emit() 添加自定义事件而在父组件中通过触发自定义事件来获得传递的参数但如今在Vue3中 为了更好的使用 组合式API Vue 已经逐渐的舍去大量的 this 指向了。所以在Setup 中我们无法访问 this 对此Vue3 同样 也为我们提供了 一个新的 API 函数 defineEmits(), 它用来定义要触发的自定义事件函数。 templatediv classHelloWorldh5我是子级组件/h5el-button typeprimary plain clickcommunication点击给 父组件传递数据/el-buttonh3{{ data }}/h3/div /templatescript setupimport { defineProps, defineEmits, ref, reactive } from vue let data ref(这是给父组件的数据)let emit defineEmits([transmit])let communication () {emit(transmit, data) } /script父组件中 : 在子组件标签体上 注册 所定义自定义事件并且 触发对应的事件函数在事件函数中接收一个参数就是子组件传递过来的数据。 templatediv classhomeh1我是父组件/h1h4接收到 子组件传给我的 数据 {{ dataname }}/h4HelloWorld transmitReceive/HelloWorld/div /templatescript setup import { ref, defineProps, reactive, toRef, nextTick } from vue let dataname ref() let Receive (data) {console.log(data);dataname.value data.value } /script3. 爷孙组件后代组件通讯数据 有时候当我们的组件层次嵌套过深的时候时常会遇到跨组件进行数据通讯如下图如果父组件需要传递参数给重孙组件呢。这时候上面的父子组件传参的方式已经不实用了我们也不可能去逐层收到数据再逐层进行传递对此 Vue3 也给我们 提供了两个新的 API 函数 provide() 和 inject() 用来解决这样的需求。 顶层组件中 templatediv classhomeh1我是父组件/h1h2{{ name }}/h2HelloWorld //div /templatescript setupimport { ref, defineProps, reactive, toRef, nextTick, provide } from vueimport HelloWorld from ../../../components/HelloWorld.vuelet name ref(这是给重孙组件的数据)provide(Transferdata, name) //provide接收两个参数第一个参数为 和后面接收参数的组件约定好的一个字段名第二个参数就是要传递的参数。 /script 后代组件中 templatediv classGrandchildh5重孙组件/h5h4收到祖先组件的数据{{ Transferdata }}/h4h4{{ Transferdata }}/h4/div /templatescript setupimport { inject } from vuelet Transferdata inject(Transferdata)/script实现 provide() 和 inject() 图例 注明以 provide() 和 inject() 这样的方式传递的数据只要在上层组件中定义好了那么无论它的后代组件嵌套多少层多么深后代组件都能够拿取到数据。 补充 如果组件间的传递 数据量过大我们更应该选用全局 状态管理库来进行数据共享管理。 点击传送门 解读 在 Vue 中如何搭建全局状态管理库 总结 以上就是本章节为大家带来的 有关在 Vue3 中如何去使用 组件间的 数据通讯方式。也认识了 几种 新的 API 函数方法。 ‍♂️ 博主座右铭向阳而生我还在路上 —————————————————————————————— 博主想说将持续性为社区输出自己的资源同时也见证自己的进步 —————————————————————————————— ‍♂️ 如果都看到这了博主希望留下你的足迹【收藏点赞✍️评论】 ——————————————————————————————
http://www.hkea.cn/news/14278305/

相关文章:

  • 兰州建设局网站网站建设衤金手指花总十五
  • 华强北做电子网站赣州快车微信公众号
  • 需要锦州网站建设网站建站服务的公司
  • 上海网站建设过程汕头网站建设工作
  • 怎样做网站优化排名视频网站X站H站搭建建设
  • 山东住房和建设庭网站wordpress主题广告
  • 不用下载就能看的网站的浏览器wordpress 百度
  • 青岛哪里可以建网站绵阳做网站的公司有哪些
  • 银川做淘宝网站的网站流量统计数据库设计
  • 快手流量推广网站成都软件外包开发
  • 创建qq网站吗dw建网站
  • 空间站 对接如何做能切换语言的网站
  • 谷歌广告投放教程推广优化公司网站
  • 怎么套模板 网站nike定制在哪个app
  • 定制网站与模板网站苏州电商系统开发
  • 汕头搭建建站安阳论坛最新消息
  • 在线游戏网站南宁工程造价建设信息网站
  • 网站设计网站建设毕业文稿宁波网络推广推荐
  • 义乌外贸建网站桂林阳朔
  • 织梦网站地图调用全站文章响应式网站推广
  • 工作细胞中文版免费完整版第一季百度seo关键词优化公司
  • 网站建设与实践吧网站做软件的软件下载
  • 网站规划建设与管理维护教学大纲贵州软件开发 网站开发
  • 惠州网站制作培训标书制作教程全过程
  • app应用网站单页模板推广联盟网站怎么做
  • 北京网站建设公司 网络服务知名网站建设设计
  • 龙华网站建设yihe kj大公司网站建设建网站
  • 石家庄企业自助建站湖南衡阳市建设工程造价网站
  • 网站模板文件在哪里下载成都seo达人
  • 网站建设的网青岛网上房地产网签查询