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

  • 本来是封装好了,是给到 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>
相关推荐
EatFan2 小时前
Java接入支付宝 JSAPI 支付保姆教程(二):流程讲解与前后端代码讲解
前端·spring boot·后端·微信小程序·小程序·uni-app
m0_587383001 天前
折扣卡CPS系统源码的技术架构与实战开发指南
人工智能·小程序·数据挖掘·系统架构·需求分析
2501_915106321 天前
苹果App Store上架费用及流程全面解析
android·ios·小程序·https·uni-app·iphone·webview
T01156181 天前
全栈项目实战手记|艺培场馆课时预约小程序全项目开发历程完整复盘总结
运维·服务器·小程序
lhldsg1 天前
多商户团购系统源码:技术架构选型与二次开发实战指南
java·小程序·架构
2601_949950631 天前
一套小程序,解决资料整理、在线刷题和错题复盘
人工智能·小程序·刷题·练习·小程序推荐
白远山2 天前
智慧场馆解决方案小程序系统开发实战与架构设计指南
java·开发语言·小程序·架构
Rooting++2 天前
小程序{{ }}和vue{{ }}语法的区别
前端·vue.js·小程序
博、、2 天前
折扣卡CPS系统源码实战开发指南:从架构设计到落地部署全解析
小程序·需求分析
lhldsg2 天前
折扣卡CPS小程序定制全流程实战指南:从需求分析到上线部署
java·前端·小程序