在我們開發 mPaaS 小程序的過程中,如果已有小程序 API 或事件無法滿足開發需求,您也可以自行擴展。
小程序調用原生自定義 API
1.客戶端自定義 API 並註冊。
2.小程序調用。
let call = my.call('tinyToNative', {
param1: 'p1aaa',
param2: 'p2bbb'
}, (result) => {
console.log(result);
my.showToast({
type: 'none',
content: result.message,
duration: 3000,
});
})
那麼我們如何取消註冊呢?如下代碼:
//取消註冊
call.remove();
call = undefined;
原生應用向小程序發送自定義事件
1.小程序註冊事件
let on = my.on('www',()=>{
my.alert({
title: '1212',
content: '123',
buttonText: '123123',
success: () => {
},
fail: () => {
},
complete: () => {
}
});
})
2.客戶端發送事件
獲取當前小程序頁面所在的 viewController,調用 callHandler 方法發送事件。
[self callHandler:@"nativeToTiny" data:@{@"key":@"value"} responseCallback:^(id responseData) {
}];
同理我們如何取消註冊事件呢?
on.remove();
on = undefined;
參數說明
參數 | 說明 |
---|---|
handlerName | 小程序端監聽的事件名稱 |
data | 客戶端向小程序端傳遞的參數 |
callback | 小程序端執行完後回調處理 block |
參考資料
- 小程序開發快速開始:https://help.aliyun.com/document_detail/172408.html
- 自定義 JSAPI:https://help.aliyun.com/document_detail/55577.html
下期預告
mPaaS 小程序 "應用更新錯誤(1001)" 該如何排查?
撰文:滕宏才
- END -
延伸閱讀