更新记录
1.0.0(2026-10-27) 下载此版本
更新日志
1.0.0(2026-10-27)
首次发布。
新增
- 新增
le-browser-guide引导弹窗组件,符合 easycom 规范,无需 import 即可使用 - 新增 JS API:
openInBrowser()尝试直接调起第三方浏览器,copyLink()复制链接到剪贴板 - App 端:通过
plus.runtime.openURL()调起系统默认浏览器 - 微信小程序端:平台限制无法调起外部浏览器,自动降级为「复制链接 + 三步操作引导」,支持长按链接框手动复制
- H5 端:
window.open()新标签页打开,被浏览器拦截时自动降级为当前页跳转 - 组件支持自定义标题、说明文案、按钮文案、遮罩点击关闭(
title/desc/confirmText/maskClosable) - 组件事件:
open(浏览器调起成功)、copy(复制成功)、close(弹窗关闭)、update:show(配合v-model:show) - 浏览器图标采用纯 CSS 绘制,零图片资源依赖,样式使用 scoped + BEM 命名
- 提供演示页面
pages/index/index.vue,展示组件弹窗与 JS API 两种调用方式
兼容性
- 仅支持 Vue 3(
<script setup>语法) - 支持平台:App(vue 页面)、微信小程序、H5
平台兼容性
uni-app(5.33)
| Vue2 | Vue3 | Chrome | Safari | app-vue | app-nvue | Android | iOS | 鸿蒙 |
|---|---|---|---|---|---|---|---|---|
| - | √ | √ | √ | √ | - | √ | √ | - |
| 微信小程序 | 支付宝小程序 | 抖音小程序 | 百度小程序 | 快手小程序 | 京东小程序 | 鸿蒙元服务 | QQ小程序 | 飞书小程序 | 小红书小程序 | 快应用-华为 | 快应用-联盟 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| √ | - | - | - | - | - | - | - | - | - | - | - |
其他
| 多语言 | 暗黑模式 | 宽屏模式 | 蒸汽模式 |
|---|---|---|---|
| × | × | √ | × |
le-browser-guide 浏览器打开引导
引导用户使用第三方浏览器打开链接地址的 uniapp 插件,基于 Vue 3 + JavaScript,零第三方依赖,支持 easycom 自动注册。
平台兼容性
| 平台 | 支持 | 行为说明 |
|---|---|---|
| App(vue 页面) | ✅ | 通过 plus.runtime.openURL() 直接调起系统默认浏览器 |
| 微信小程序 | ✅ | 平台限制无法调起外部浏览器,自动降级为「复制链接 + 操作步骤引导」 |
| H5 | ✅ | window.open() 新标签页打开,被浏览器拦截时降级为当前页跳转 |
| 其他小程序 / nvue | ❌ | 未适配 |
Vue 版本要求:仅支持 Vue 3(
<script setup>语法)。
目录结构
uni_modules/le-browser-guide/
├── components/
│ └── le-browser-guide/
│ └── le-browser-guide.vue # 引导弹窗组件(符合 easycom 规范,无需手动 import)
├── index.js # JS API:openInBrowser / copyLink
├── package.json # 插件清单
└── readme.md # 使用说明
本项目演示页面:pages/index/index.vue。
快速开始
方式一:组件弹窗引导(推荐)
组件符合 easycom 规范,无需 import,直接在模板中使用:
<template>
<view>
<button @click="showGuideRef = true">打开链接</button>
<le-browser-guide
v-model:show="showGuideRef"
:url="urlRef"
@open="handleOpen"
@copy="handleCopy"
/>
</view>
</template>
<script setup>
import { ref } from 'vue'
const urlRef = ref('https://www.example.com')
const showGuideRef = ref(false)
function handleOpen(url) {
console.log('已在浏览器中打开:', url)
}
function handleCopy(url) {
console.log('链接已复制:', url)
}
</script>
方式二:JS API 直接调用
不展示弹窗,直接尝试调起浏览器(小程序端自动降级为复制链接并 toast 提示):
import { openInBrowser } from '@/uni_modules/le-browser-guide/index.js'
async function handleOpen() {
try {
const opened = await openInBrowser('https://www.example.com')
// opened = true:App / H5 已直接打开浏览器
// opened = false:微信小程序已降级为复制链接
} catch (err) {
uni.showToast({ title: err.message || '打开失败', icon: 'none' })
}
}
组件 API
Props
| 参数 | 类型 | 默认值 | 说明 |
|---|---|---|---|
| show | Boolean | false | 弹窗显隐,配合 v-model:show 使用 |
| url | String | - | 必填,目标链接地址 |
| title | String | - | 弹窗标题。默认:小程序端「请在浏览器中打开」,App/H5 端「即将跳转至浏览器」 |
| desc | String | 该页面需要在外部浏览器中打开以获得完整体验 | App / H5 端说明文案(小程序端展示步骤引导,不展示该文案) |
| confirmText | String | - | 确认按钮文案。默认:小程序端「复制链接」,App/H5 端「立即打开」 |
| maskClosable | Boolean | true | 点击遮罩是否关闭弹窗 |
Events
| 事件名 | 回调参数 | 说明 |
|---|---|---|
| update:show | show: Boolean | 弹窗显隐变化,配合 v-model:show |
| open | url: String | App / H5 端已成功调起浏览器 |
| copy | url: String | 链接复制成功(小程序端主要成功回调) |
| close | - | 弹窗关闭 |
JS API
openInBrowser(url, options?)
尝试直接调起第三方浏览器打开链接。
| 参数 | 类型 | 说明 |
|---|---|---|
| url | String | 必填,链接地址 |
| options.showTip | Boolean | 小程序端复制成功后是否 toast 提示,默认 true |
返回值:Promise<Boolean>
true:App / H5 已直接打开浏览器false:微信小程序已降级为复制链接reject:链接为空或调起失败
copyLink(url)
仅复制链接到剪贴板。
返回值:Promise<Boolean>,成功 resolve true,失败 reject。
各端实现细节
- App:确认按钮触发
plus.runtime.openURL(url),失败时 toast 提示「调起浏览器失败,请重试」。 - 微信小程序:由于平台安全策略,小程序内无法调起外部浏览器。弹窗展示三步引导文案与虚线链接框,点击「复制链接」调用
uni.setClipboardData(),同时支持长按链接框手动复制。 - H5:优先
window.open(url, '_blank')打开新标签页;若被浏览器弹窗拦截(返回null),自动降级为window.location.href当前页跳转。
注意事项
- manifest.json:本项目已将
vueVersion设置为"3",main.js 中的 Vue 3 条件编译分支自动生效。 - 微信小程序:如需在微信内直接打开网页(而非引导至外部浏览器),需使用
web-view并配置业务域名(仅限已认证主体),本插件不包含该能力。 - App 端:
plus.runtime.openURL()依赖系统浏览器,iOS 无需额外配置;Android 请确保设备已安装浏览器应用。 - 样式:组件使用
<style scoped>与 BEM 类名,图标为纯 CSS 绘制,无图片资源依赖;如需定制主题色,修改样式中的#3c9cff即可。

收藏人数:
下载插件并导入HBuilderX
赞赏(0)
下载 0
赞赏 0
下载 12719373
赞赏 1958
赞赏
京公网安备:11010802035340号