declare interface CustomShareAppMessage {
title?: string;
path?: string;
imageUrl?: string;
}
declare type onShareAppMessageHook = (options: ShareAppMessageOption) => CustomShareAppMessage | void;
export declare const onShareAppMessage: (hook: onShareAppMessageHook, target?: ComponentInternalInstance | null) => any;
里面的onShareAppMessageHook
是不是应该改成:
declare type onShareAppMessageHook = (options: ShareAppMessageOption) => Promise<CustomShareAppMessage > | CustomShareAppMessage | void;
呆狗的一生 (作者)
在 onShareAppMessage 函数中,到数据库中去获取分享时的 title 等相关配置是很常见的场景,如果不修改相关的声明文件,我实在不知道怎么实现
2022-10-28 18:55
DCloud_UNI_GSQ
回复 呆狗的一生: 你说的是需求吧,并不是修改类型声明的依据,可以列出哪个平台(比如App还是小程序)目前的实现支持这样的用法?如果实现并未支持的情况下仅修改类型声明是无用的,需要确定有平台支持这样的用法。
2022-10-31 15:43
呆狗的一生 (作者)
回复 DCloud_UNI_GSQ: 看了一下微信开发者工具里的 ts 声明,的确不允许返回一个Promise。但是我下面这段 js 代码,能正常在微信小程序里运行
2022-11-02 17:38
DCloud_UNI_GSQ
回复 呆狗的一生: 测试结果来自开发者工具还是iOS或者安卓真机?是否有微信官方文档支撑?
2022-11-03 15:46
呆狗的一生 (作者)
回复 DCloud_UNI_GSQ: 测试结果来自微信开发者工具,微信开发文档里,并没有说可以返回一个promise,但我找到了一段示例代码,点击查看,返回的对象中可以包含promise,promise 如果该参数存在,则以 resolve 结果为准,如果三秒内不 resolve,分享会使用上面传入的默认参数
2022-11-04 15:18
DCloud_UNI_GSQ
回复 呆狗的一生: 好的,辛苦了,后续会安排人员测试验证后更新相关文档及声明文件。
2022-11-07 11:02