【UniApp跳转外部链接】实现方案

🌻🌻前言

在跨平台开发中,外部链接跳转是常见需求。本文将针对UniApp框架,详细讲解不同场景下实现外部链接跳转的解决方案,并提供最佳实践建议。


方案实现:

UniApp实现外部链接跳转需要针对不同平台采用不同方案:

  • H5:直接使用window.open或webview
  • 微信小程序:必须使用web-view组件
  • App:推荐使用plus.runtime.openURL

H5平台实现方式

javascript 复制代码
// 方式1:使用内置API
uni.navigateTo({
    url: '/pages/webview/webview?url=' + encodeURIComponent('https://www.example.com')
})

// 方式2:直接页面跳转(新窗口)
window.open('https://www.example.com', '_blank')

配套webview页面

html 复制代码
<template>
    <web-view :src="url"></web-view>
</template>

<script>
export default {
    data() {
        return {
            url: ''
        }
    },
    onLoad(options) {
        this.url = decodeURIComponent(options.url)
    }
}
</script>

微信小程序方案

javascript 复制代码
// 使用web-view组件前需配置业务域名
uni.navigateTo({
    url: '/pages/webview/webview?url=' + encodeURIComponent('https://www.example.com')
})

注意事项

  1. 需登录微信公众平台配置业务域名
  2. 域名必须备案且支持HTTPS
  3. 每个小程序最多配置200个业务域名

App端实现方式

javascript 复制代码
// 使用系统浏览器打开
plus.runtime.openURL('https://www.example.com', (err) => {
    if(err) {
        uni.showToast({ title: '打开链接失败', icon: 'none' })
    }
})

// 或使用内置Webview
uni.navigateTo({
    url: '/pages/webview/webview?url=' + encodeURIComponent('https://www.example.com')
})
相关推荐
2501_915106321 天前
iOS 抓包工具实战实践指南,围绕代理抓包、数据流抓包和拦截器等常见工具
android·ios·小程序·https·uni-app·iphone·webview
Jyywww1211 天前
Uniapp+Vue3 移动端顶部安全距离
uni-app
2501_915106321 天前
如何在 iOS 设备上理解和分析 CPU 使用率(windows环境)
android·ios·小程序·https·uni-app·iphone·webview
怀君1 天前
Uniapp——苹果IOS离线打自定义基座教程
ios·uni-app
码农客栈1 天前
小程序学习(十二)之命令行创建uni-app项目
学习·小程序·uni-app
敲敲了个代码1 天前
UniApp 的 rpx是什么,跟rem比呢?
前端·javascript·面试·职场和发展·微信小程序·uni-app
雪芽蓝域zzs1 天前
uniapp Vue3 项目中设置 “custom“: true 自定义底部导航栏失败
uni-app
00后程序员张1 天前
iOS 应用加固软件怎么选,从源码到IPA方案选择
android·ios·小程序·https·uni-app·iphone·webview
imHere·1 天前
UniApp + 微信小程序 xr-frame 3D 开发实战指南
微信小程序·uni-app·xr
游戏开发爱好者81 天前
iOS App 抓不到包时的常见成因与判断思路,结合iOS 调试经验
android·ios·小程序·https·uni-app·iphone·webview