把属性、方法定义在自定义组件上与定义在组件内部
来源:13-5 谈组件的独立性
幕布斯4195248
2021-04-07
例如: post.wxml中
<block wx:for="{{postData}}" wx:for-item="pos" wx:for-index="idx" wx:key="postId"> <c-post res="{{pos}}" index="{{idx}}" data-post-id="{{pos.postId}}" bind:tap="onGoToDetail" /> </block>
和在 components > post > index.wxml
<view class="post-container" data-post-id="{{pos.postId}}" bind:tap="onGoToDetail" > ... </view>
表面上两种方法都能实现效果,第二种方法事件绑定更灵活,除了这个还会引起其它什么影响吗?
写回答
3回答
-
如果是对全部组件绑定,应该绑定外部,绑定内部最好用事件传递出去。
012021-04-12 -
爱吃apple的阿狸
2021-11-21
直接定义在post.wxml里的组件上,是作用于整个组件,这个组件是由头像,日期,标题,图片,还有阅读数这些组合成一个整体的组件;
如果你只想点击组件内部的一部分(比如只想点击标题和图片才跳转进详情,点击头像等其他组件内的元素跳转到另一个页面),这种就需要在组件内部去定义点击事件了,然后在抛到外部来处理。
这种组件内局部的事件,是无法在外部组件元素上定义出来的。
00 -
7七月
2021-04-08
一般个人习惯用block来当做括号的作用。
012021-04-09
相似问题