微信小程序中可以接入「加入群聊」插件,实现用户一键加入企业微信群的功能。相关文档:
但这两个插件只提供了数个参数实现最基础的文字和图标的修改,开发者无法深度定制按钮样式。不过我们仍然可以通过一种非常 Hack 的方法实现样式定制,思路也非常简单:
在按钮上方覆盖一层遮罩,并设置遮罩元素点击穿透。核心代码只有一行,即给遮罩添加:pointer-events: none;
示例代码:
index.wxml:
<view class="inviter">
  <view class="mask">
    <action-button>加入群聊</action-button>
  </view>
  <view class="trigger">
    <join-group-inviter url="{{ joinGroupUrl }}" />
  </view>
</view>
index.wxss:
.inviter {
  position: relative;
}
.inviter .mask {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  z-index: 200;
  pointer-events: none;
}
.inviter .trigger {
  opacity: 0;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 199;
}
最终效果如下:

不过需要注意的是:覆盖元素的尺寸和形状都不能与「加入群聊」的差距过大,毕竟我们本质上还是在点击「加入群聊」按钮本身。