Catalog npm
Back to packageRELEASE DETAILS

1.0.0

npm

5g-fe-components

# fe-5g-component 消息接收组件

uivue
Published21 Apr 2025
Direct dependencies17
Transitive dependenciesNot calculated

README

Current package documentation

5g-fe-components

fe-5g-component 消息接收组件

fe-5g-component 是一个功能丰富的消息接收组件,支持多种消息类型的展示和交互。

功能特性

  • 支持多种消息类型:

    • 文本消息
    • 撤回消息
    • 地理位置
    • 音频消息
    • 视频消息
    • 图片消息
    • 单卡片消息
    • 多卡片消息
  • 文本消息支持:

    • Markdown 格式
    • LaTeX 数学公式
    • 代码高亮
    • 链接自动识别
    • 手机号码自动识别和脱敏
    • 文本复制功能
  • 多媒体消息支持:

    • 图片预览
    • 视频播放
    • 音频播放
    • 地理位置查看

使用方法

基础用法

<template>
  <fe-5g-component
    :data="messageData"
    :floatMenuShow="true"
    :copyBtnShow="true"
    @play-audio="handlePlayAudio"
    @copy-text="handleCopyText"
    @redirect-url="handleRedirectUrl"
    @showSwiper="handleShowSwiper"
    @showPhotoLargeView="handleShowPhotoLargeView"
    @open-location="handleOpenLocation"
    @post-back="handlePostBack"
    @open-url="handleOpenUrl"
    @tel-click="handleTelClick"
  />
</template>
// main.js
import Fe5gCompoents from '5g-fe-components'
import '5g-fe-components/dist/index.css'
Vue.use(Fe5gCompoents)

Props

属性名类型必填说明
dataObject是消息数据对象
floatMenuShowBoolean否是否显示浮动菜单
copyBtnShowBoolean否是否显示复制按钮
useCustomImagePreviewBoolean否是否使用自定义的图片预览
dataPathString否数据路径,指向data中的卡片内容路径

消息数据格式

{
  contentType: String, // 消息类型:'text'|'Revoke'|'location'|'audio'|'video'|'image'|'singleCard'|'multiCard'
  message: String, // 文本消息内容
  messageId: String, // 消息ID
  data: {
    thumbUrl: String, // 缩略图URL
    audioUrl: String, // 音频URL
    videoUrl: String, // 视频URL
    imageUrl: String, // 图片URL
  },
  generalPurposeCard: { // 卡片消息数据
    content: Object,
    layout: {
      cardOrientation: String // 'vertical'|'horizontal'
    }
  }
}

事件

事件名说明参数
play-audio播放音频时触发-
copy-text复制文本时触发text: String
redirect-url点击链接时触发url: String
showSwiper显示图片轮播时触发{ isphotoOpen, photoItem, data }
showPhotoLargeView显示大图时触发{ isphotoOpen, src }
open-location打开地理位置时触发locationData: Object
post-back点击卡片回复时触发data: Object, idx: Number
open-url打开URL时触发item: Object
tel-click点击电话号码时触发item: Object

依赖

  • Muse-UI
  • Showdown (Markdown 转换)
  • Showdown-Katex (LaTeX 支持)
  • Highlight.js (代码高亮)

注意事项

  1. 文本消息支持 Markdown 格式,包括表格、删除线、下划线等语法
  2. 支持 LaTeX 数学公式,使用 $ 或 $$ 包裹
  3. 代码块会自动进行语法高亮
  4. 图片加载失败时会显示错误提示
  5. 视频下载功能在 iOS 设备上不可用
  6. 在微信环境中,视频下载需要通过复制链接到浏览器实现

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Declared dependencies 17

Native requirements
17 direct targetsNot calculated transitive count
Package / targetRequirementRelationship
vue
Environment
{
  "local_name": "vue",
  "alias": false,
  "peer_metadata": null
}
^2.6.10runtime
axios
Environment
{
  "local_name": "axios",
  "alias": false,
  "peer_metadata": null
}
^0.19.0runtime
vue-aplayer
Environment
{
  "local_name": "vue-aplayer",
  "alias": false,
  "peer_metadata": null
}
^1.6.1runtime
rollup
Environment
{
  "local_name": "rollup",
  "alias": false,
  "peer_metadata": null
}
^2.79.1development
postcss
Environment
{
  "local_name": "postcss",
  "alias": false,
  "peer_metadata": null
}
^8.5.3development
@babel/core
Environment
{
  "local_name": "@babel/core",
  "alias": false,
  "peer_metadata": null
}
^7.26.10development
autoprefixer
Environment
{
  "local_name": "autoprefixer",
  "alias": false,
  "peer_metadata": null
}
^10.4.21development
@babel/preset-env
Environment
{
  "local_name": "@babel/preset-env",
  "alias": false,
  "peer_metadata": null
}
^7.26.9development
rollup-plugin-vue
Environment
{
  "local_name": "rollup-plugin-vue",
  "alias": false,
  "peer_metadata": null
}
^5.1.9development
@rollup/plugin-url
Environment
{
  "local_name": "@rollup/plugin-url",
  "alias": false,
  "peer_metadata": null
}
^8.0.2development
@rollup/plugin-json
Environment
{
  "local_name": "@rollup/plugin-json",
  "alias": false,
  "peer_metadata": null
}
^6.1.0development
@rollup/plugin-babel
Environment
{
  "local_name": "@rollup/plugin-babel",
  "alias": false,
  "peer_metadata": null
}
^6.0.4development
rollup-plugin-postcss
Environment
{
  "local_name": "rollup-plugin-postcss",
  "alias": false,
  "peer_metadata": null
}
^4.0.2development
vue-template-compiler
Environment
{
  "local_name": "vue-template-compiler",
  "alias": false,
  "peer_metadata": null
}
^2.7.16development
@rollup/plugin-commonjs
Environment
{
  "local_name": "@rollup/plugin-commonjs",
  "alias": false,
  "peer_metadata": null
}
^28.0.3development
@rollup/plugin-node-resolve
Environment
{
  "local_name": "@rollup/plugin-node-resolve",
  "alias": false,
  "peer_metadata": null
}
^16.0.1development
@babel/plugin-transform-runtime
Environment
{
  "local_name": "@babel/plugin-transform-runtime",
  "alias": false,
  "peer_metadata": null
}
^7.26.10development

Distribution files

1 collected
Distribution 1

Source distribution

Source file
Checksums from source
{
  "shasum": "98641edc34e5b68b90fed8604c8d7801440d27da",
  "tarball": "https://registry.npmjs.org/5g-fe-components/-/5g-fe-components-1.0.0.tgz",
  "fileCount": 3,
  "integrity": "sha512-QlvaAIpxoKFXMRdfPHNmP6iq23d6gwlHuKWHNdwlsB4+Tv+hJxVkqkmRGDNTcveFtoOe913oYkzCKKy71osjEw==",
  "signatures": [
    {
      "sig": "MEUCIF4Djy+Zzl5HLZjWDKG3nxte1eNQryYKkHuNrHo+W41bAiEA4LbyYibUPehOPOxZ540lyEdoQ7JHjUm6xVS5xbrow5c=",
      "keyid": "SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"
    }
  ],
  "unpackedSize": 211852
}

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 20:34 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package_version:b022c1e6ff1d51af09799ce5b29cbefc32ab3eff5f51ec7e7715a69036e88e64

Other collected versions

1.1.023 Jun1.0.918 Jun1.0.818 Jun1.0.718 Jun1.0.618 Jun1.0.517 JunView all collected versions →