开放数据展示组件
 # 开放数据展示组件
open-data 是用于展示平台开放数据的组件,主要用于小程序平台展示用户的公开信息或群信息。该组件仅支持微信小程序、QQ小程序、百度小程序和抖音小程序。使用该组件可以快速展示用户昵称、头像、性别、所在城市等信息,但各平台提供的数据内容和使用限制不同。
# 1. 什么是 open-data 组件?
 open-data 组件是一个用于展示小程序平台开放数据的组件。该组件可以直接嵌入小程序页面中,展示用户信息或群组信息,减少开发者通过接口获取数据并处理的步骤。open-data 依赖平台的开放能力,仅在指定的平台支持,且不同平台展示的数据种类有所不同。
使用场景
- 展示用户昵称和头像:在小程序页面中展示用户的公开信息,比如微信用户的昵称和头像。
 - 展示群组信息:在小程序页面中展示用户加入的群组名称(适用于群聊小程序的场景)。
 
# 2. open-data 组件的常用属性
 open-data 组件通过 type 属性指定展示的数据类型,此外还有其他属性用于控制显示语言或指定群组 ID。
| 属性名 | 类型 | 默认值 | 说明 | 平台差异说明 | 
|---|---|---|---|---|
type |  String | 无 | 指定展示的开放数据类型。具体类型详见下表。 | 支持微信小程序、QQ小程序等。 | 
open-gid |  String | 无 | 当 type="groupName" 时生效,用于指定群组 ID。 |  微信小程序、QQ小程序 | 
lang |  String | en |  当 type="user*" 时生效,指定展示语言,有效值包括 en、zh_CN、zh_TW。 |  微信小程序、QQ小程序 | 
# 2.1 type 属性的有效值
 type 属性是 open-data 组件的核心,用于指定要展示的数据类型。
| 值 | 说明 | 平台差异说明 | 
|---|---|---|
userNickName |  用户昵称 | 微信小程序 | 
userAvatarUrl |  用户头像 | 微信小程序 | 
userGender |  用户性别 | 微信小程序 | 
groupName |  群组名称 | 微信小程序 | 
userCity |  用户所在城市 | 微信小程序 | 
userProvince |  用户所在省份 | 微信小程序 | 
userCountry |  用户所在国家 | 微信小程序 | 
# 3. open-data 组件使用
 以下是 open-data 组件的一个基本使用示例,展示用户的昵称和头像,以及群组的名称。在使用时,可以根据需求动态调整展示的数据类型。
<template>
  <view>
    <!-- 展示用户昵称 -->
    <open-data type="userNickName"></open-data>
    <!-- 展示用户头像 -->
    <open-data type="userAvatarUrl"></open-data>
    <!-- 展示群组名称,需指定 open-gid -->
    <open-data type="groupName" open-gid="GROUP_ID"></open-data>
  </view>
</template>
<script setup>
import { ref } from 'vue'
// 可以根据实际需求动态指定展示的类型或 open-gid
const groupId = ref('GROUP_ID')
</script>
 2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# 4. 支持平台与兼容性
| 平台 | 是否支持 | 
|---|---|
| 微信小程序 | √ | 
| QQ 小程序 | √ | 
| 百度小程序 | √ | 
| 抖音小程序 | √ | 
| 支付宝小程序 | × | 
| App、H5 | × | 
# 支付宝小程序
支付宝小程序没有提供 open-data 组件,但开发者可以通过支付宝提供的 API 获取相关数据。例如,用户信息可以通过 my.getAuthUserInfo() 接口获取。
# 5. 使用注意事项
open-data组件仅在小程序平台中生效,且不同平台支持的数据类型有所差异,开发者需根据具体平台情况进行调整。- 微信平台已经回收了用户个人信息展示能力,开发者不能依赖 
open-data组件展示用户的头像、昵称、性别等信息。 open-data组件必须确保在合规的场景下使用,避免未经用户授权的隐私展示。
# 5.1 微信小程序平台限制
从 2022年2月21日起,微信小程序回收了通过 open-data 展示用户个人信息的能力。使用 open-data 组件展示用户头像、昵称、性别等信息时,将返回默认的“微信用户”和灰色头像。开发者如需收集用户信息,可以通过微信提供的头像昵称填写功能 (opens new window) 获取用户的头像和昵称。
# 5.2 群组名称展示限制
在展示群组名称时,微信平台会提示用户“群名称仅你可见,小程序无法获取”。开发者需要确保用户隐私数据的安全展示。
总结
open-data 组件是小程序平台中展示开放数据的重要工具,特别适合用于展示用户的公开信息和群组信息。在使用时,开发者需要注意平台的支持情况以及微信平台对用户数据展示的限制。对于微信小程序,头像和昵称展示需要通过新的用户信息获取流程完成。