Android および iOS で Wechat API をサポートするための Expo モジュール
ネイティブWechatを参照してください。
React Native を使用してアプリを構築しているほとんどの開発者は、アプリを WeChat に接続することはもちろん、ネイティブ開発スキルも備えていません。
特に、WeChat OpenSDK は、多くの API が明確で直感的ではないクソみたいなドキュメントのせいで、とても面倒です。 React Native を使用する開発者を支援するために、私はこのライブラリを作成するために可能な限り努力しました。そして、皆さんがこの恩恵を受けて、WeChat に対する不満が軽減されることを願っています。
npm install [email protected]
# or
yarn add [email protected]
npm install [email protected]
# or
yarn add [email protected]
app.json
を開き、次の情報を追加します。
{
// Add your WeChat app ID
"scheme" : [ "wx123456nxabcdefg" ] ,
"ios" : {
// Add your iOS universal link
// Example "applinks:(google.com)"
"associatedDomains" : [ "applinks:(Universal Link Here)" ]
} ,
// Add Expo Native Wechat plugin
"plugins" : [ "expo-native-wechat" ]
}
API を呼び出す前に、 registerApp
呼び出してネイティブ WeChat を登録することが不可欠です。
import { registerApp } from "expo-native-wechat" ;
useEffect ( ( ) => {
return registerApp ( "wx964290141ebe9b7b" ) ;
} , [ ] ) ;
registerApp
呼び出すと、Wechat からイベントを受信するリスナーが存在します。 registerApp
リスナーを削除する関数を返し、Wechat からイベントは受信されません。
ここで API を呼び出します。たとえば、認証リクエストを Wechat に送信し、コードを受信します。ここではsendAuthRequest
という名前のAPIを使用できます。
import { registerApp , sendAuthRequest } from "expo-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 >
) ;
ネイティブ WeChat のほとんどの API は約束されています。 Promise を返すsendAuthRequest
も同様です。ユーザーが Wechat でリクエストを確認すると、Promise はコード付きのデータとして解決されます。すべての約束された API は、 NativeWechatResponse
という名前のジェネリック型を返します。
export type NativeWechatResponse < T = Record < string , unknown > > = {
type : string ;
errorCode : number ;
errorStr : string | null ;
data : T ;
} ;
このライブラリの使用に問題がある場合は、遠慮なく問題を報告してください。私はいつもここにいて助けてくれます。