当前位置: 首页 > 微信相关

分享小程序内嵌网页及跳转的实现

发布日期:2038-01-19 11:14:07 分类:微信相关 阅读()来源:网络收集

好东西要多分享:

做网站就上魔艺客
摘要:小程序开发内嵌web页面的功能,这个对于很多微信开发者都是个重大消息。

小程序开发内嵌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替换成这个就行了。由于内嵌网页是单页面应用,在手机上测试的时候webViewUrl的获取每次都会出现问题,只有换成一般的多页面应用,如果不这么做分享后会出现跳不到想要页面的情况。

内嵌网页的开放也是为了方便开发者灵活配置小程序,web-view就是这样一个承载页面内容的组件,会自动铺满整个小程序页面,但目前个人类型与海外类型的小程序暂不支持使用。


推荐阅读:微信小程序开发支付步骤简述

声明: 文章内容及图片部分全部摘自网络,在此分享供读者参考和借鉴,不代表酷雷的观点。文章、图片等内容如涉嫌侵权,请联系我们删除,谢谢!带有原创标签的属于酷雷原创文章,未经允许不得转载!

标签:

我要说一说

加载中~

相关推荐

您好,很高兴为您服务!
广告合作
投诉建议
联系站长

客服热线:15821432298

扫码加好友,优惠等你来!