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

一流的天津网站建设厦门网站建设找哪家比较好

一流的天津网站建设,厦门网站建设找哪家比较好,公司网站建设合同电子版,牛商网官网一、组件直接传值 大家都知道父子组件传值的方案,有以下几个,不再详细敖述 Props:父组件向子组件传递数据 $emit:子组件通过自定义事件向父组件传递数据 .sync修饰符:一个方便且强大的工具,可以简化父子组…

一、组件直接传值

大家都知道父子组件传值的方案,有以下几个,不再详细敖述

  • Props:父组件向子组件传递数据

  • $emit:子组件通过自定义事件向父组件传递数据

    • .sync修饰符:一个方便且强大的工具,可以简化父子组件之间的双向数据绑定,用于创建双向绑定prop的修饰符,它允许子组件更新父组件的prop值,实现父子组件之间的双向数据同步(如果不想使用事件),.sync修饰符的工作原理主要基于Vue.js的事件机制和prop传递机制

  • Vuex进行状态管理:应用提供了一种高效、清晰的状态管理方案。通过集中式存储管理、可预测的状态变化、组件间的解耦以及方便的调试工具等特性,Vuex极大地简化了应用程序的状态管理。

  • provide/inject:是Vue.js中一种强大的机制,用于实现跨组件的数据共享和方法传递。它们能够有效地避免繁琐的props传递,提升组件间通信的灵活性和代码的可维护性。然而,在使用时需要注意响应性问题、命名冲突以及性能开销等细节。

  • Bus事件:Bus事件适用于简单的场景或临时解决方案,如果在组件销毁后没有移除事件监听器,可能会导致内存泄漏。因此,在组件销毁之前,应该使用$off方法来移除事件监听器。

  • refs或parent/$children访问组件实例,父组件可以通过$refs直接访问子组件的数据或方法;父组件可以通过children访问子组件,子组件可以通过parent访问父组件,从而实现父子组件之间的数据传递。但这种方式会破坏组件的封装性和独立性,因此应尽量避免过多使用。

二、 子组件改变父组件的值

子组件通过自定义事件向父组件传递数据,来让父组件改变值,是正规使用,,其中.sync修饰符同步父组件值,是综合版本,不过有以下两种情况是不被推荐,尤其直接改变非对象属性

  • 子组件直接改变了父组件里面的对象:因为是对象里面的属性,没有直接触发该对象属性的 setter,只是在修改对象内部的引用,而这个内部引用并没有被 Vue 的响应式系统所追踪。因此,从技术上讲,Vue 不知道这个内部属性已经被修改,也就不会触发视图更新,也就不会报错。(不会报错)
  • 直接修改父组件非对象属性就会直接触发 setter引发报错Avoid mutating a prop...(报错)

 父组件

<template><div><child-component :parentMessage="parentMessage" :form="form" @setParentMessage="setParentMessage" :form.sync="form"></child-component></div>
</template><script>
export default {data() {return {parentMessage: 'Hello from parent!',form:{user:'默认'}};},methods: {setParentMessage(msg) {this.parentMessage = msg//推荐}}
}
</script>

子组件

<template><div><p @click="sendUpdate">{{ parentMessage }}</p></div>
</template><script>
export default {props: {parentMessage: String,form: Object},methods: {sendUpdate(data) {this.form.us='不报错'//只是在修改对象内部的引用,而这个内部引用并没有被 Vue 的响应式系统所追踪。因此,从技术上讲,Vue 不知道这个内部属性已经被修改,也就不会触发视图更新,也就不会报错。this.parentMessage='报错'//Avoid mutating a prop...//推荐:子组件通过自定义事件向父组件传递数据,来让父组件改变值,是正规使用this.$emit('setParentMessage', '自定义事件传递数据');//推荐:.sync修饰符同步父组件值const form = { ...this.form };form.us = '.sync修饰符同步父组件值';this.$emit('update:form', form);//当然这样做可能会使代码变得难以理解和维护,特别是在大型应用程序中。//更好的做法是遵循Vue的最佳实践,即不要直接修改prop。this.form.us = '.sync修饰符同步父组件值';this.$emit('update:form', this.form);}}
}
</script>

http://www.yayakq.cn/news/489729/

相关文章:

  • 如何做律师网站顺网网页游戏大厅
  • 青岛新城世纪网站建设公司建设通官网首页
  • 免费的域名网站wordpress打开图片预览代码
  • 建设铝合金窗网站国内网站建设哪家好
  • 注销网站 取消接入产品设计网址
  • 网站建设如何站内搜索铜陵app网站做营销招聘
  • 营销型企业网站特点土特产网站建设事业计划书
  • 沈阳网站建设选网龙腾讯人安装wordpress
  • 软件开发价格标准西安网站关键词优化推荐
  • 儿童网站html模板石家庄专门做网站的公司
  • 许昌市做网站公司汉狮价格做swf网站
  • 公司做网站计入那个科目网络公司网站首页图片
  • 做介绍的英文网站免费ppt模板下载官网
  • 如何用代码做分数查询的网站100到300万企业所得税
  • wordpress子站点解析微信网页版网址是多少
  • 烟台高新区网站设计工作室简介怎么写
  • 自助建站系统有什么好处设计师网站十大网站推荐
  • 有做材料的网站吗网站关键词排名下降
  • 工装设计效果图网站教务系统管理系统入口
  • 顺德顺的网站建设中国工程建设协会网站
  • 广州网站建设培训班男女做羞羞视频网站
  • 庆阳建设局网站想建网站做优化
  • 西安公司网站如何建立pdf插件 wordpress
  • 网站建设目的分析飞天云服务器
  • 南通网站排名方法杭州工商注册
  • 江西建设职业技术学院网站专门做封面的网站
  • 精湛的合肥网站建设建设厅网站上企业登录
  • 做百度网站需不需要备案公司建设网站
  • 天津西青区离哪个火车站近上海网站建筑公司
  • 网站做资讯需要获取许可证吗怎么做网站代理