首先在我们可以直接写到需要的 page 中,然后再进行抽取组件,自定义组件建议 wxzx-xxx 命名

官网地址:https://developers.weixin.qq.com/miniprogram/dev/framework/custom-component/

例如,我们封装的组件名为 **wxzx-loadmore

  • wxzx-loadmore.wxml
<view hidden="{{response.length < 1}}">
<view class="weui-loadmore" hidden="{{is_loadmore}}">
<view class="weui-loading"></view>
<view class="weui-loadmore__tips">正在加载</view>
</view>
<view class="weui-loadmore weui-loadmore_line" hidden="{{!is_loadmore}}">
<text class="weui-loadmore__tips">{{tip}}</text>
</view>
</view>

这里就是把index.wxml中的需要封装成组件的代码原样copy过来

  • wxzx-loadmore.js
Component({
/**
* 组件的属性列表
*/
properties: {
response: {
type: String,
value: ''
},
is_loadmore: {
type: Boolean,
value: false
},
tip: {
type: String,
value: '我是有底线的'
}
}, /**
* 组件的初始数据
*/
data: { }, /**
* 组件的方法列表
*/
methods: {
emit: function(data) {
// 自定义组件向父组件传值
let val = data,
my_event_detail = {
val: val
}
// myevent自定义名称事件,父组件中使用
this.triggerEvent('myevent', my_event_detail)
/*
在父组件中写上bind:myevent="get_emit",在父组件中就需要调用get_emit事件
*/
},
}
})
  • index.wxml 父组件
    <wxzx-loadmore
response="{{comment_list}}"
is_loadmore="{{is_loadmore}}"
bind:myevent="get_emit"
></wxzx-loadmore>
<!-- 这就是在父组件中调用子组件,然后基于子组件传值来在父组件中赋值 -->
  • index.js 中
// 接受子组件的传值
get_emit: function (e) {
this.setData({
is_show: e.detail.val
})
},
  • index.json 这里需要引入组件,在哪个父页面中引用子组件,就在哪个json文件中引入
{
"usingComponents": {
"wxzx-loadmore": "/component/wxzx-loadmore/wxzx-loadmore"
}
}

最新文章

  1. AngularJS依赖注入
  2. asp.net读取xml方法
  3. DevExpress控件使用系列--ASPxGridView+Popup+Tab
  4. NOSql之redis的学习
  5. Yii路径总结(转)
  6. Exception in thread &quot;main&quot; brut.androlib.err.UndefinedResObject: resource spec: 0x01030200(转)
  7. Oracle EBS-SQL (INV-6):检查监督帐户别名处理.sql
  8. 数据结构——队列(Queues)
  9. 解决element-ui 中upload组件使用多个时无法绑定对应的元素
  10. ElasticSearch核心知识 -- 索引过程
  11. Linux系统编程:简单文件IO操作
  12. 【JVM】问题排查
  13. java编程思想(2)--一切都是对象
  14. shell之重定向
  15. POJ 2342 - Anniversary party - [树形DP]
  16. Hive启动异常
  17. yii2 内置事件
  18. HTML——颜色代码
  19. CentOS7.0安装Nginx 1.10.0
  20. Linux crontab命令详解与实例

热门文章

  1. 重启sqlserver服务 命令
  2. shell 判断脚本参数
  3. 【SVN】命令行忽略不必要的文件和文件夹
  4. python3之模块io使用流的核心工具
  5. C语言字节对齐 __align(),__attribute((aligned (n))),#pragma pack(n)【转】
  6. MVC layout 命名空间引用问题
  7. Windows 8.1/10配置VS 2013 + MPI开发环境
  8. Springboot:java.sql.SQLNonTransientConnectionException: CLIENT_PLUGIN_AUTH is required
  9. shell升级完整记录
  10. 洛谷P2613有理数取余