小程序
小游戏
企业微信
微信支付
扫描小程序码分享
小程序提供的组件比较大众化,然而现实中很多零碎、重复的业务功能,而这些业务功能除了在不同页面中需要用到,只是数据上的不同,其行为都是一样的。
比如,一个性别选择器:
<picker-gender name="gender" value="{{gender}}" bindchange="genderChange"></picker-gender>
6 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
换言之,一种期望的自定义组件:
# picker-gender 组件定义
```
-- /components/picker-gender/index.wxml
<view>
当前值:{{value}}
请选择性别:<picker bindchange="change"></picker>
</view>
-- /components/picker-gender/index.js
Component({
data: {},
onLoad(options) {
// options.value
// options.bindchange
},
change(e) {
options.bindchange();
}
})
因此,在使用上:
```html
组件间的通信透过像 `value` 表示输入属性,`bindchange` 表示输出通知。
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
那么,能否稍微详细描述一下,你标题中的“开放”指的是什么?
上面我也看过。但是我的更希望的是,对于组件的定义应该更**内聚性**的,而不是更多的*侵入性*。
如果你追求的不是“原生组件”,那么,用 js 实现“自定义组件”这个本来就是“开放”的呀,你自己把自己做的代码包装一下就可以算是“自定义组件”了。
如果你想要微信官方提供一个专门分享第三方自定义组件的平台,这个目前还没有,但民间已经有了,比如 http://www.wxapp-union.com/forum.php?mod=viewthread&tid=2123
小程序本身是基于javascript的,因此,开放自定义组件其实并非不可取。
如果是用现有的 WXML/WXSS 能拼出来的东西,代码上包装一下就算是“自定义组件”了。
如果说的是“自定义原生组件”,这个恐怕就比较渺茫了。
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
换言之,一种期望的自定义组件:
# picker-gender 组件定义
```
-- /components/picker-gender/index.wxml
<view>
当前值:{{value}}
请选择性别:<picker bindchange="change"></picker>
</view>
-- /components/picker-gender/index.js
Component({
data: {},
onLoad(options) {
// options.value
// options.bindchange
},
change(e) {
options.bindchange();
}
})
```
因此,在使用上:
```html
<picker-gender name="gender" value="{{gender}}" bindchange="genderChange"></picker-gender>
```
组件间的通信透过像 `value` 表示输入属性,`bindchange` 表示输出通知。
那么,能否稍微详细描述一下,你标题中的“开放”指的是什么?
上面我也看过。但是我的更希望的是,对于组件的定义应该更**内聚性**的,而不是更多的*侵入性*。
如果你追求的不是“原生组件”,那么,用 js 实现“自定义组件”这个本来就是“开放”的呀,你自己把自己做的代码包装一下就可以算是“自定义组件”了。
如果你想要微信官方提供一个专门分享第三方自定义组件的平台,这个目前还没有,但民间已经有了,比如 http://www.wxapp-union.com/forum.php?mod=viewthread&tid=2123
小程序本身是基于javascript的,因此,开放自定义组件其实并非不可取。
如果是用现有的 WXML/WXSS 能拼出来的东西,代码上包装一下就算是“自定义组件”了。
如果说的是“自定义原生组件”,这个恐怕就比较渺茫了。