更新记录

1.0.1(2026-11-03)

  • 修复 iOS 云打包:JSON.stringify 的返回值按可选字符串处理
  • 修复 iOS 点按钮没有弹窗:从当前页面弹出,遮罩和卡片直接可见
  • 卡片上的点击交给按钮。弹窗没真正出现时,不再当成点了返回

1.0.0(2026-11-03)

  • 四个独立全屏弹窗:showType1、showType2、showType3、showType4
  • 类型 1:状态图标、标题、说明、一个按钮
  • 类型 2:图标、标题、说明、勾选列表、主按钮和描边按钮
  • 类型 3:图标、标题、说明、圆点列表、主按钮和描边按钮
  • 类型 4:圆角图片、标题、说明、编号列表、主按钮和文字按钮
  • 文案、主题色、遮罩、图标由宿主传入。style 可改圆角、字号、卡片色、列表底色、按钮高度。maskOpacity 和 style.cardOpacity 调透明度。默认英文

平台兼容性

uni-app(4.27)

Vue2 Vue3 Chrome Safari app-vue app-vue插件版本 app-nvue Android Android插件版本 iOS iOS插件版本 鸿蒙
× × × × √ 1.0.1 × 5.0 1.0.1 13 1.0.1 -
微信小程序 支付宝小程序 抖音小程序 百度小程序 快手小程序 京东小程序 鸿蒙元服务 QQ小程序 飞书小程序 小红书小程序 快应用-华为 快应用-联盟
× × × × × × × × × × × ×

uni-app x(4.27)

Chrome Safari Android iOS 鸿蒙 微信小程序
- - - - - -

其他

多语言 暗黑模式 宽屏模式 蒸汽模式
√ × × ×

fz-app-dialog

1.0.1

仅 App(Android / iOS)。四个全屏弹窗,分开调用。宿主用哪个调哪个。

遮罩铺满屏幕,默认黑色 48%。卡片白底、圆角,居中。点按钮会关掉弹窗并把 action 交回来,不算失败。

不传 locale 时按钮是英文。中文传 zh 或 zh-CN。

拷到 uni_modules 后打自定义基座。改 .kt / .swift / .uts 要重打。只改调用方的 js / vue 不用重打。

环境

项 要求
HBuilderX 4.27 及以上
工程 uni-app,Vue2 或 Vue3。不支持 uni-app x、H5、小程序
Android minSdk 21
iOS 13.0 及以上

插件不申请权限。H5 和小程序调用是 94408。已经有一个弹窗时再开,是 94406。

类型 1

状态图标、标题、说明、一个胶囊按钮。

import { showType1 } from '@/uni_modules/fz-app-dialog'

const res = await showType1({
  title: 'Pet profile\ncreated successfully',
  message: 'Use it anywhere within PetRealm.',
  button: 'ok'
})
// res.action  ok

icon 用 success、info、warning、error、question、none,或本地图片。不传是绿色对勾。themeColor 改按钮和图标颜色。

类型 2

图标、标题、说明、勾选列表、上面实心按钮、下面描边按钮。

import { showType2 } from '@/uni_modules/fz-app-dialog'

const res = await showType2({
  title: 'Upgrade to Pro?',
  message: 'Unlock more ways to create your AI pets.',
  icon: 'blue',
  items: [
    'More AI generation credits',
    'More creative styles',
    'Higher-priority generation'
  ],
  confirm: 'Upgrade to Pro',
  cancel: 'Not Now',
  locale: 'en'
})
// res.action  confirm 或 cancel

icon 用 green、blue、purple、brown,或 #RRGGBB,或本地图片。不传是蓝色皇冠。items 不传就不显示列表,最多 8 条。

类型 3

和类型 2 同一组参数。列表记号是圆点,不是勾。

import { showType3 } from '@/uni_modules/fz-app-dialog'

const res = await showType3({
  title: 'Downgrade to Pro?',
  message: 'Fewer credits and features on your new plan.',
  icon: 'blue',
  items: [
    'Fewer generation credits',
    'Limited creative features'
  ],
  confirm: 'Confirm Downgrade',
  cancel: 'Keep My Current Plan'
})

类型 4

圆角图片、标题、说明、编号列表、上面实心按钮、下面一行文字按钮。序号由弹窗按条目顺序生成。

import { showType4 } from '@/uni_modules/fz-app-dialog'

const res = await showType4({
  title: 'New Version Available',
  message: 'Version 1.2.4',
  icon: '/static/app-icon.png',
  items: [
    'Faster AI generation. Optimized startup speed, opens 30% faster.',
    'New pet templates',
    'Stability improvements'
  ],
  confirm: 'Update Now',
  cancel: 'Maybe Later'
})

icon 是本地图片,显示成圆角方块。不传就不显示图标。

外观

每个类型都可以带 style。没写的项保持默认:白卡片、圆角 28、标题 18、说明 14、按钮高 48 的胶囊、遮罩黑色 48%、按钮 #2EAE6A。

遮罩透明度用 maskOpacity,0 到 1,默认 0.48。卡片透明度用 style.cardOpacity,默认 1。传了 maskOpacity 就按这个数盖掉 maskColor 里的透明度。

await showType1({
  title: 'Pet profile\ncreated successfully',
  message: 'Use it anywhere within PetRealm.',
  button: 'ok',
  themeColor: '#2563EB',
  maskOpacity: 0.3,
  style: {
    cardColor: '#111827',
    titleColor: '#F9FAFB',
    messageColor: '#9CA3AF',
    cardRadius: 16,
    buttonRadius: 8,
    buttonHeight: 44,
    titleSize: 20
  }
})

能改的还有 iconColor、badgeColor、cardWidth、padding、iconSize、messageSize、buttonTextSize、listBackground、listTextColor、listMarkColor、listRadius、cancelColor。

cardWidth 小于等于 1 是屏宽比例,大于 1 是 dp。颜色用 #RGB、#RRGGBB、#AARRGGBB。

标题、说明、按钮文案都由宿主传。插件不带业务词。版式仍按类型固定,不能把类型 1 改成列表。

隐私、权限声明

1. 本插件需要申请的系统权限列表:

插件不申请权限。

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

弹窗只在本机显示。输入内容只回给宿主,不上传。插件无自有服务器,不发起网络请求。

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

无广告。无统计 SDK。

暂无用户评论。