小程序封装组件简单案例,所有小程序适用(传入参数、外抛事件、传入样式)

  • 本来是封装好了,是给到 uniapp 中使用的,因为 uniapp 按钮部分平台不支持一些属性,所以自己二次封装。

一、封装一个加粉丝群的按钮

  • 在原生编辑器中,右键文件夹新建组件,创建了一个 group-button 组件文件夹。

  • group-button - index.js

    js 复制代码
    Component({
      // 支持外部传入class
      externalClasses: ['iclass'],
      data: {
      },
      properties: {
      },
      methods: {
        handleJoinGroup (e) {
          // 外抛事件
          this.triggerEvent('joinChange', e)
        }
      }
    })
  • group-button - index.json

    js 复制代码
    {
      "component": true, // 组件必须配置
      "usingComponents": {}
    }
  • group-button - index.ttml

    html 复制代码
     <button
        class="iclass"
        open-type="joinGroup"
        group-id="xxxxxxxxx"
        bindjoingroup="handleJoinGroup"
    >
        <!-- 支持组件显示外部内容 -->
        <slot />
    </button> 

二、页面中使用

  • home - index.js

    js 复制代码
    const app = getApp()
    
    Page({
      data: {
    
      },
      onLoad: function () {
        console.log('Welcome to Mini Code')
      },
      handleJoinGroup(e) {
        console.log(e.detail)
      }
    })
  • home - index.json

    js 复制代码
    {
        "usingComponents": {
            "group-button": "../group-button/index"
        }
    }
  • group-button - index.ttml

    html 复制代码
    <view class="intro">
        <group-button iclass="btn" bindJoinChange="handleJoinGroup">加入粉丝群</group-button>
    </view>
相关推荐
黄华SJ520it27 分钟前
线上线下多门店融合系统开发指南
小程序·系统开发
一孤程20 小时前
Airtest自动化测试第五篇:小程序与Web测试——跨平台自动化全覆盖
前端·自动化测试·小程序·自动化·测试·airtest
CRMEB定制开发1 天前
开源商城源码下载后怎么搭建?五步走通完整流程
小程序·开源·商城系统·私域运营
小羊Yveesss1 天前
2026年如何自己搭建一个外贸网页?单页验证和完整网站的区别
微信小程序·小程序·开源
weishuangyun1231 天前
怎么开发自己的小程序?2026 三种主流方式实测对比
小程序
言乐61 天前
Python视频相对亮度检测
数据库·python·计算机视觉·小程序·音视频
2501_916008891 天前
iOS 证书管理最佳实践 从创建到续期的完整指南
android·ios·小程序·https·uni-app·iphone·webview
小羊Yveesss2 天前
2026年微信小程序搭建一般需要多长时间?不同方案周期和延期点
微信小程序·小程序
禾高网络2 天前
互联网医院|AI 互联网医院成品开发系统
java·大数据·人工智能·小程序
小羊Yveesss2 天前
2026年微信小程序搭建算什么费用?年费、设计费、开发费和维护费
微信小程序·小程序