关于react-native:Native-Wechat-React-Native-微信-SDK

34次阅读

共计 1339 个字符,预计需要花费 4 分钟才能阅读完成。

Native Wechat

在 Android 与 iOS 反对微信 SDK 的 React Native 库。

动机

许多 React Native 开发者不具备原生开发能力,更不必提将他们的 App 对接到微信。尤其微信 OpenSDK 是一个令人头疼的货色,因为它的文档非常蹩脚,外面许多的 API 并不清晰与直观。为帮忙应用 React Native 的开发者对接微信,我开发了这个库,心愿可能帮忙到您。

个性

  • Native WeChat 是新的,与此同时许多同类的库都暂停保护并不再适配最新的微信 API;
  • Native WeChat 反对新旧 React Native 架构;
  • Native Wechat 反对 TurboModule,能够懒加载以放慢 App 启动;
  • 反对 TypeScript 以获取更好的语言提醒与类型谬误检测;
  • 简直所有的 API 均返回 Promise。

应用入门

注册 SDK

在调用任何 API 之前,请务必调用 registerApp 来注册 SDK。

import {registerApp} from 'native-wechat';

useEffect(()=>{return registerApp('wx964290141ebe9b7b');
}, [])

当调用 registerApp 后,它将注册一个从原生端返回事件的监听器,并返回一个函数用于登记这个监听器。

调用 API

是时候调用 API 了。举个例子,咱们要向微信发送一个鉴权申请,并承受返回的 code,您须要调用 sendAuthRequest

import {registerApp, sendAuthRequest} from 'native-wechat';
import {Button, Text} from 'react-native';
import {verifyWechatCode} from '@/api/auth/wechat'

useEffect(()=>{registerApp('wx964290141ebe9b7b');
}, [])

const onButtonClicked = async () =>{const {data: {code}} = await sendAuthRequest();
  
  await verifyWechatCode(code);
}

return <Button onClick={onButtonClicked}>
  <Text>Send Auth Request</Text>
</Button>

简直所有 API 都会返回 Promise,sendAuthRequest 也是。当用户在微信上受权信息后,Promise 将变为 resolved,并携带 code。所有返回 Promise 的 API 都返回一个名为 NativeWechatResponse 的泛型类型。

export type NativeWechatResponse<T = Record<string, unknown>> = {
  type: string;
  errorCode: number;
  errorStr: string | null;
  data: T;
};

反对

若您在应用这个库时遇到了艰难,请在 GitHub 上创立一个 issue,不要犹豫。我会尽快尽可能解决。

链接

https://native-wechat.hector.im/
https://github.com/Hector-Cho…

正文完
 0