wepy父子组件props传值

阅读: 评论:0

wepy父子组件props传值

wepy父子组件props传值

WePY中父子组件之间传值依靠props来实现,props对象中声明了我们需要传递的值。传值有两种方式,包括静态传值和动态传值。
静态传值
父组件向子组件传递常量数据,只能传递String字符串类型。
在父组件template模板部分的组件标签中,使用子组件props对象中所声明的属性名作为其属性名来向子组件传值。

父:
<child title="mytitle"></child>
子:
props = {title: String
};
onLoad () {console.log(this.title); // mytitle
}

动态传值(一个变另外一个跟着变)
父---->子:父组件使用.sync修饰符
子---->父:设置子组件props的twoWay: true
父<—>子:既使用.sync修饰符,同时子组件props中添加的twoWay: true

// 父:
<child :title="parentTitle" :syncTitle.sync="parentTitle" :twoWayTitle="parentTitle"></child>
data = {parentTitle: 'p-title'
};
// 子:
props = {// 静态传值title: String,// 父向子单向动态传值syncTitle: {type: String,default: 'null'},twoWayTitle: {type: String,default: 'nothing',twoWay: true}
};
onLoad () {console.log(this.title); // p-titleconsole.log(this.syncTitle); // p-titleconsole.log(this.twoWayTitle); // p-titlethis.title = 'c-title';console.log(this.$parent.parentTitle); // p-title.this.twoWayTitle = 'two-way-title';this.$apply();console.log(this.$parent.parentTitle); // two-way-title.  --- twoWay为true时,子组件props中的属性值改变时,会同时改变父组件对应的值this.$parent.parentTitle = 'p-title-changed';this.$parent.$apply();console.log(this.title); // 'c-title';console.log(this.syncTitle); // 'p-title-changed' --- 有.sync修饰符的props属性值,当在父组件中改变时,会同时改变子组件对应的值。
}

本文发布于:2024-02-01 13:33:15,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170676559436958.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:父子   组件   wepy   props   传值
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23