微信小程序的坑之wx.miniProgram.postMessage
工作中有个需求是小程序的网页在关闭的时候,需要回传给小程序一个参数
查阅小程序官方文档,有这样一个接口 wx.miniProgram.postMessage ,可以用来从网页向小程序发送消息,然后通过 bindmessage 事件来监听消息,如下是官方文档描述

微信小程序相关文章
以下是代码:
// 网页代码
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
<title>postMessage</title>
</head>
<body>
<script type="text/javascript" src="https://res.wx.qq.com/open/js/jweixin-1.3.2.js"></script>
<script type="text/javascript">
wx.miniProgram.postMessage({ data: '获取成功' })
wx.miniProgram.navigateBack({delta: 1})
</script>
</body>
</html>
// 小程序代码
<web-view bindmessage="handleGetMessage" src="test.html"></web-view>
Page({
handleGetMessage: function(e) {
console.log(e.target.data)
}
})
写完试了下,期待打印 “获取成功” ,而实际小程序里面啥也没打印。。。
然后仔细看官方文档,发现有这句话:
网页向小程序
postMessage时,会在特定时机(小程序后退、组件销毁、分享)触发并收到消息。
也就是只有在小程序后退、组件销毁、分享时才会触发
所以应该改变 postMessage 的时机,调换顺序就可以了
<script type="text/javascript">
wx.miniProgram.navigateBack({delta: 1})
wx.miniProgram.postMessage({ data: '获取成功' })
</script>
这样再试试,发现能正常捕获消息了
原文地址:https://segmentfault.com/a/1190000016717727
微信小程序的坑之wx.miniProgram.postMessage的更多相关文章
- 微信小程序踩坑之一[wx.request]请求模式
最近在做小程序时,使用wx.request()方法请求时, 当使传输string类型时,一定要声明method请求模式为post,否则会一直报错,而不声明时默认为get, 已填坑 =,= wx.req ...
- 微信小程序踩坑集合
1:官方工具:https://mp.weixin.qq.com/debug/w ... tml?t=1476434678461 2:简易教程:https://mp.weixin.qq.com/debu ...
- 微信小程序数据请求方法wx.request小测试
微信小程序数据请求方法 wx.request wxml文件: <view> <textarea value="{{textdata}}"/> </vi ...
- 微信小程序wepy开发循环wx:for需要注意
微信小程序wepy开发循环wx:for需要注意 item index值必须在wx:for之后使用 <view wx:for="{{tablist}}" class=" ...
- 两百条微信小程序跳坑指南(不定时更新)
微信小程序联盟出品 跳坑textarea<二百二十三>不显示文本及textarea相关问题集合跳坑<二百一十三> background-image无法获取本地资源图片....跳 ...
- 微信小程序爬坑日记
新公司上手小程序.30天,从入门到现在,还没放弃... 虽然小程序发布出来快一年了,爬坑的兄弟们大多把坑都踩平了.而我一直停留在"Hello World"的学习阶段.一来没项目,只 ...
- 微信小程序入坑之自定义组件
前言 最近接触微信小程序,再次之前公司用的前端框架是vue ,然后对比发现,开发小程序是各种限制,对于开发者非常不友好.各种槽点太多,完全吐槽不过来,所以在此不多说,打算下次专门写一篇文章吐槽一下.本 ...
- 使用wepy框架搭建微信小程序采坑记(一)
1.什么是wepy 这个框架是腾讯内部出的一个类MVVM的小程序开发框架.大体上来说语法是类VUE的,所以如果有VUE开发经验的话迁移成本会低一些.至于具体的怎么使用我就不赘言了,有问题查文档(官方文 ...
- 微信小程序的坑(持续更新中)
参与微信小程序开发有一段时间了,先后完成信息查询类和交易类的两个不同性质的小程序产品的开发:期间遇到各种各样的小程序开发的坑,有的是小程序基础功能不断改进完善而需要业务持续的适配,有的是小程序使用上的 ...
随机推荐
- bzoj2064: 分裂(状压dp)
Description 背景: 和久必分,分久必和... 题目描述: 中国历史上上分分和和次数非常多..通读中国历史的WJMZBMR表示毫无压力. 同时经常搞OI的他把这个变成了一个数学模型. 假设中 ...
- 园艺研究生中途自学Java,赶上校招终进美团,分享面试经验
前言 最近,圈子里的很多小伙伴都在面试,有些小伙伴儿拿到不错的offer,今天给大家推荐的这位小伙伴拿到美团点评的校招offer,他将自己这次面试的经历写下来供大家参考,看看你能回答多少? 背景 上海 ...
- Python递归和迭代
递归 在函数内部,调用函数自身的编程技巧称为递归( recursion).递归函数结构清晰,很直观的理解计算过程,但也有严重缺点:相对于普通循环而言,递归运行效率较低,经过很多冗余的计算,递归会消耗大 ...
- PHP函数技巧篇
可变参数 Php提供3个函数用于检索在函数中所传递的参数. $array = func_get_args(); //返回一个提供给函数的所有参数的数组 $count = func_num_args() ...
- PKU_campus_2018_H Safe Upper Bound
思路: 题目链接http://poj.openjudge.cn/practice/C18H/ 用2147483647除以最大素因子. 这里用了Pollard_rho因子分解算法,模板参考了http:/ ...
- 给Sublime Text3 设置自定义快捷键
Preferrences -> Key Bindings-User打开用户自定义快捷键文件,添加以下代码,保存. [ { "keys": ["ctrl+shift+ ...
- mysql中的 enum (枚举)
mysql enum是指字段的类型 表示枚举类型 mysql> alter table student add adders enum("sichuang","sh ...
- dialog - 从 shell 显示对话框
总览 (SYNOPSIS) dialog --clear dialog --create-rc file dialog --print-maxsize dialog common-options bo ...
- uva12433 Rent a Car
init 一开始搞成2*n+2了...囧 所以初始化很重要! 然后提交的时候忘了删调试的数据了..囧 技巧:设立虚拟节点 建图比较麻烦(非常). 要考虑到保养完了的车可以免费再用 设立S,T ,1 ...
- syntax error : missing ';' before identifier
原文解决方案 #include "string.h" #include "stdafx.h" #include "Chapter 01 MyVersi ...