> 自媒体 > (AI)人工智能 > 火了 超赞的功能!小程序开发内嵌web页面的功能,今天学习了吗
火了 超赞的功能!小程序开发内嵌web页面的功能,今天学习了吗
来源:ChatAiRobot
2023-07-07 14:26:03
993
管理

小程序开发内嵌web页面的功能,这个对于很多微信开发者都是个重大消息。

支持小程序内嵌网页,并且在内嵌网页中多次跳转,分享后,点开还是在跳转之后的网页。

首先,当然是参考微信小程序的api。

其实使用起来特别简单,只需在页面中放入这样一个标签即可,其中src一定是要在小程序管理中心配置过的。特别注意一下,web-view会占满整个页面,不管这个页面有什么其它的东西,都不会展示出来。

好了。有了这个可以开始进入需求实现的阶段了。对于分享功能,做过小程序开发的都不会陌生,在需要被分享的页面js中加入onShareAppMessage这样一个事件即可。

在 Page 中定义 onShareAppMessage 函数,设置该页面的转发信息。

只有定义了此事件处理函数,右上角菜单才会显示 “转发” 按钮

用户点击转发按钮的时候会调用

此事件需要 return 一个 Object,用于自定义转发内容

示例代码如下:

Page({

onShareAppMessage: function (res) {

if (res.from === 'button') { // 来自页面内转发按钮 console.log(res.target) }

return { title: '自定义转发标题', path: '/page/user?id=123',

success: function(res) { // 转发成功 },

fail: function(res) { // 转发失败 } } }})

但是存在web-view时,onShareAppMessage回调函数参数res中还会多一个webViewUrl

Page({ onShareAppMessage(options) { console.log(options.webViewUrl) }})

内嵌网页分享的功能就实现出来了。

onShareAppMessage(options) {

var that = this

var return_url = options.webViewUrl

return {

title: that.data.title,

path: return_url,

success: function (res) {

that.web_url = return_url // 转发成功

wx.showToast({

title: "转发成功",

icon: 'success',

duration: 2000 }) },

fail: function (res) { // 转发失败 } } },

需要实现内嵌网页内多次跳转分享的功能,这就需要自己想办法了。在小程序分享中又不能保持状态,这个得去记录分享时网页的路径。其实有点开发经验的都能想到这个办法,那就是使用?在url后记录下来,这样在其它用户打开转发小程序的时候,取出其中的参数,将web-view中的src替换成这个就行了。话不多说,直接上代码。

Page({

web_url:"",

data: { title: '测试内嵌分享', url:'', web_src:'' },

onShareAppMessage(options) {

var that = this

var return_url = options.webViewUrl

var path = '/page/test/test?return_url=' encodeURIComponent(return_url)

console.log(path, options)

return { title: that.data.title, path: path, success: function (res) {

that.web_url = return_url // 转发成功

wx.showToast({ title: "转发成功", icon: 'success', duration: 2000 }) },

fail: function (res) { // 转发失败 } } },

onLoad: function () {

var pages=getCurrentPages();

var currentPage = pages[pages.length - 1];

var web_src = decodeURIComponent(currentPage.options.return_url || encodeURIComponent("你的内嵌网页网址")) this.web_url = web_src

this.setData({ web_src: web_src },

function () { }); }})

写到这里,终于大功告成了。

但是!!!

测试出问题了!!!分享后跳不到想要的页面!!!

由于内嵌网页是单页面应用,在手机上测试的时候webViewUrl的获取每次都会出现问题,只有换成一般的多页面应用,这个问题才不会发现。

0
点赞
赏礼
赏钱
0
收藏
免责声明:本文仅代表作者个人观点,与本站无关。其原创性以及文中陈述文字和内容未经本网证实,对本文以及其中全部或者 部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。 凡本网注明 “来源:XXX(非本站)”的作品,均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对 其真实性负责。 如因作品内容、版权和其它问题需要同本网联系的,请在一周内进行,以便我们及时处理。 QQ:617470285 邮箱:617470285@qq.com
相关文章
. 宝马半价卖!降幅高达49%,2026年车市杀疯了
俗话说得好:“三十年河东,三十年河西。”谁能想到,曾经高不可攀、甚至..
宝马 Alpina 新标正式发布,定位仅次于劳斯莱斯
2026年2月12日,宝马正式对外披露其 Alpina 的最新规划,并发布了全新设..
默茨专机抵京,第一道难关出现!宝马CEO通知政府,中方有言在先..
更值得关注的是投资端。2025年前11个月,德国企业在华投资超过70亿欧元,..
本土高管退场、渠道全面告急,奔驰宝马的2026!
2026年一开年,奔驰和宝马接连出现的人事变动,把豪华车市场最真实的压力..
有人说开奔驰E300的都是装。我就想问:你连装都装不起,你酸什么..
春节刚过完,私信快被“56E怎么选”给炸爆了。尤其是2026款的奔驰E300L,..
潘九堂谈小米汽车立项路线之争:既然出发晚了,干脆挑战最难的,最终选择正..
IT之家 2 月 26 日消息,小米产业投资部合伙人潘九堂今日发文,谈到了小..
宝马CEO警告:忽视中国或危及未来经济成功,合作是关键..
【文/观察者网 王一】据英国路透社2月19日报道,德国宝马集团董事长齐普..
宝马CEO最新涉华表态:对中国庞大市场与创新潜力视而不见的人,正错失巨大..
据路透社报道,宝马集团首席执行官(CEO)奥利弗·齐普策当地时间19日警..
宝马7系直降27万 BBA集体放价 豪华车市格局生变
2026年2月,宝马7系终端现金优惠高达27万元,奔驰、奥迪等德系豪车主力车..
关于作者
轻随风之舞..(普通会员)
文章
1987
关注
0
粉丝
1
点击领取今天的签到奖励!
签到排行

成员 网址收录40418 企业收录2986 印章生成263660 电子证书1157 电子名片68 自媒体107022

0
0
分享
请选择要切换的马甲:

个人中心

每日签到

我的消息

内容搜索