测试web-view,实现小程序和网页之间的切换
官方有句提醒:个人类型与海外类型的小程序暂不支持使用
测试条件:
1.小程序后台管理中,进入“开发设置”,设置一个业务域名(注意:不是设置服务器域名)。比如 https://test.XXX.com.cn
2.配置业务域名时,会有如下提醒。按照提醒,将下载得到的校验文件,放到业务域名的根目录下,并确保可以访问到这个文件。

3.将做测试的 html 也提交到业务域名下的服务器。我写的测试代码如下:
<div>
<h3>这是网页</h3>
<button id="btn1">跳转到小程序的首页</button>
<button id="btn2">点击发送数据</button>
<p>点击第二个按钮后,然后点击小程序的回退箭头,可以获取到来自网页的数据</p>
</div>
window.onload = function() {
var btn1 = document.getElementById('btn1');
var btn2 = document.getElementById('btn2');
btn1.onclick = function() {
wx.miniProgram.navigateTo({url: '/pages/index/index'})
}
btn2.onclick = function() {
wx.miniProgram.postMessage({ data: '来自网页的数据' })
}
}
4.开发者工具,打开本地测试的小程序。(注意:第一步中提到的小程序,使用它的AppId登录)
编写小程序测试代码,我写的代码如下:
index.wxml中,
<navigator class="link" url="/pages/logs/logs?path=https://test.XXX.com.cn/webViewTest.html">跳转到网页</navigator>
logs.wxml中,
<web-view src="{{path}}" bindmessage="getMsgHandle"></web-view>
logs.js中
Page({
data: {
show: true,
path: ''
},
onLoad: function () {
var that = this;
that.setData({
path: that.options.path
})
},
getMsgHandle: function(e) {
var that = this;
wx.showToast({
title: e.detail.data[0],
icon: 'success',
duration: 5000
})
console.log(e.detail.data)
}
})
我的测试思路:index.wxml中,点击一个链接,跳转到网页。实际实现是,点击index.wxml中的链接,跳转到logs.wxml,用logs.wxml,呈现要跳转的网页内容。
注意:测试的话,直接在开发者工具中测试,或者扫码测试即可,不用将小程序上传。
最终测试结果:点击小程序内的按钮,跳转到了显示网页的页面,点击网页中的按钮,还能回到小程序的页面。
经过研究,个人认为,小程序和网页的跳转,并不是真正意义上的跳转,实际上还是小程序中的页面1跳转到页面2,而页面2包裹的内容是网页而已。
如果,直接通过网页地址访问目标网页,点击目标网页中的按钮,是返回不了小程序的。
以上为个人测试得知,如有错误,请指正。谢谢!
测试web-view,实现小程序和网页之间的切换的更多相关文章
- 学不动了!微信官方推出 Web 前端和小程序统一框架 Kbone
听说最近微信官方推出了一个统一 Web 前端和小程序的框架 -- Kbone ,特意去看了下... 为什么微信要搞Kbone? 微信小程序的底层模型和 Web 端不同,开发者无法直接把 Web 端的代 ...
- 分享一份软件测试项目实战(web+app+h5+小程序)
大家好,我是谭叔. 本次,谭叔再度出马,给大家找了一个非常适合练手的软件测试项目,此项目涵盖web端.app端.h5端.小程序端,可以说非常之全面. 缘起 在这之前,谭叔已经推出了九套实战教程. 但是 ...
- web页面和小程序页面实现瀑布流效果
小程序实现瀑布流效果,和web页面差不多,都要经过以下步骤: 1).加载图片,获取图片的宽高度: 2).根据页面需要显示几列计算每列的宽度: 3).根据图片真实宽度和每列的宽度比,计算出图片需要显示的 ...
- web api对接小程序基本签名认证
using BMOA.Application.System; using BMOA.Common; using BMOA.Web.Models; using Newtonsoft.Json; usin ...
- 解决微信小程序的wx-charts插件tab切换时的显示会出现位置移动问题-tab切换时,图表显示错乱-实现滑动tab
解决Echarts在微信小程序tab切换时的显示会出现位置移动问题 tab切换时,图表显示错乱 <canvas class="kcanvas" canvas-id=" ...
- 微信小程序开发--页面之间的跳转
一.navigator--完成页面之间的跳转 1.新建一个页面文件夹 2.在app.json文件中引入页面 "pages": [ "pages/index/index&q ...
- 微信小程序之页面之间传递值
页面之间传值有三种方式 1.url传值 2.本地存储传值 3.全局变量传值 1.url传值: 通过url传值的需要通过option来获取参数值. 更多详情可以访问小程序-navigateTo章节. A ...
- 微信小程序关于tabbar点击切换数据不刷新问题
微信小程序中经常遇到的需求就是我提交了一个表单或者进行了一个操作,需要在我的个人中心页面中实时显示出来,但是小程序中的tabbar切换类似于tab切换 并不会进行页面刷新请求 所以总是会造成一些数据更 ...
- 小程序组件-swipe多页切换,并支持下拉刷新,上拉加载,menu动态联动切换
前言 最近一个小程序项目中遇到一个需求,就是实现类似资讯类app的多页面切换的那种效果, 如下图: 最终效果: 1.功能分析 首先实现这个功能分为三步: 实现顶部menu菜单 实现多页面滑动切换 支持 ...
随机推荐
- hive简单的项目实战
解压user.zip [root@hadoop1 test]# unzip user.zip -d /test/bigdatacase/dataset Archive: user.zip inflat ...
- Vue.js自定义标签属性并获取属性,及绑定img的src属性的坑
一.定义属性: 一般定义属性都是为了动态的去获取属性的值,或者动态的设置属性的值,如果想仅仅是设置一个普通的属性,直接在便签上设置属性即可,就像使用html的title.name等属性一样,如< ...
- Canvas实现放大镜效果完整案例
本文主要记录 canvas 在图像.文字处理.离屏技术和放大镜特效的实现过程中使用到的API.先看下效果吧: 一张模糊的图片: 鼠标点击任意位置,产生放大效果: 哇塞~ 一个帅哥,哈哈哈哈~ 1.显示 ...
- sqlilab less28 less28a
less-28 less-28a 二者相差不大 单引号小括号包裹,黑名单过滤--,#,空格,union空格select(不区分大小写) less-28的黑名单 less-28a的黑名单 %a0,不被 ...
- mac用户怎么保护自己的隐私安全?
使用过Windows系统的小伙伴们应该都知道,Windows系统下有360电脑管家和腾讯电脑管家等几款著名清理软件,专门用于清理电脑缓存.垃圾文件以及清除浏览痕迹,这对于Windows用户是大大节省了 ...
- 【PUPPETEER】初探之拖拽操作(五)
一.知识点 page.mouse elementHandle.boundingBox() ignoreDefaultArgs:['--enable-automation'] waitUntil 二 ...
- 如何循序渐进、有效地学习JavaScript?
转载链接:https://www.zhihu.com/question/19713563/answer/23068003 分享一篇 超毛 的一篇文章<如何学习javascript>(原文链 ...
- 2020 CSP-J 多校赛 Day 2 T2 题解
0x01 引入 在考场时想了一个错误算法,口胡一下,或许对理解正解有点帮助. 我们考虑交换两个数产生的代价,你会发现我们需要让大的数重复被交换的次数尽可能少,减少它对后面的代价. 那么不难构思出一个按 ...
- vscode 中 eslint prettier 和 eslint -loader 配置关系
前置 本文将探究 vscode prettier 插件 和 eslint 插件在 vscode 中的配置以及这两者对应的在项目中的配置文件的关系,最后提及 vscode eslint 插件配置与 es ...
- LeetCode 033 Search in Rotated Sorted Array
题目要求:Search in Rotated Sorted Array Suppose a sorted array is rotated at some pivot unknown to you b ...