UNPKG

para-bridge-demo

Version:

a bridge api for js-ios/andriod rest

35 lines (31 loc) 1.07 kB
import { BridgePlugin } from '../bridge'; import { get } from 'para-utils'; interface IContactItem { contactName: string; mobile: string; } interface IGetSelectedContactResult { contactList: IContactItem[]; } export class GetSelectedContact<K> extends BridgePlugin<void, K> { protected get ntvPluginName() { return '_ntv_user_get_selected_contact'; } protected get availableMinVersion() { return '1.0.0'; } protected bridgeExecChrome(pluginName?: string | undefined): void { // 可针对不同运行环境实现特定的调用逻辑来MOCK,弥补平台差异性. throw new Error('GetSelectedContact() 未针对当前环境实现'); } } /** * 打开联系人列表,选择特定联系人,返回这个联系人的名字+手机号 * @returns IContactItem */ export const getSelectedContact = () => { return new GetSelectedContact<IGetSelectedContactResult>().invokeOnce().then(result => { const contacts = get(result.cbData, 'contactList', []); return contacts.length ? contacts[0] as IContactItem : null; }); }