通讯系统如何跨越脚本上下文并保证消息可定位、可控与可观测
简答题困难744 次浏览
参考答案与解析
# 核心结论
小程序通信跨越不同脚本上下文和渲染环境,本质上是带有目标、类型和关联信息的异步消息交换,而不是对同一内存对象的直接读写。逻辑层的数据更新、视图层的用户事件以及系统能力调用,都可能经历参数校验、序列化、通道传输、实例定位、异步调度和结果回传。WeixinJSBridge 可以用来理解宿主桥接角色,但其内部方法和消息格式不是稳定业务接口。工程上应把通信边界设计成可定位、可取消或忽略、可限流、可追踪且能明确失败原因的接口。
# 底层机制
页面栈中可能同时保留多个页面,每个页面又可能对应独立视图容器和多个组件实例,因此一条消息不能只包含函数名。概念上,它至少需要消息类型、目标页面或组件、参数、请求标识以及必要
