スマートフォンアプリはSwiftやJavaのように特定のプラットフォームで利用できるもの、そしてUnityやMonacaのように複数のプラットフォームで動作するものがあります。React Nativeは後者に属する技術です。
以前React Native用SDKを開発していたのですが、バージョンアップなどに伴って利用できなくなっていました。そこでTypeScriptに沿う形で改めてReact Native SDKを開発しはじめました。なお、これは非公式のSDKになりますので、サポート外になります。
今回はincludeの使い方について解説します。
使い方
React Native用SDKは npm でインストールできます。
npm install ncmb-react-native --save
まず初期化をします。
import config from './config.json'; import NCMB from 'ncmb-react-native'; const ncmb = new NCMB(config.applicationKey, config.clientKey);
次にデータストアのクラスを定義します。
const Favorite = ncmb.DataStore('Favorite');
そしてincludeを使って取得したいカラムを指定します。
const favs = await Favorite.include('item').fetchAll();
Favoriteクラスには item
というカラムがあり、そこに別なクラスのデータが紐付いているとします。そうすると、次のようにしてデータを取得できます。
favs[0].get('item').get('title');
注意点
includeは一回のfetchまたはfetchAll処理につき、一つのクラスしか指定できません。もし二つ目のクラスを指定すると、上書きされてしまいます。
その他指定できる条件について
includeの他、次のメソッドが用意されています。
- limit
- skip
- order
これらを使ってデータの取得を柔軟に指定可能です。
コード
コードはNCMBMania/ncmb-react-native: NCMB SDK for React Nativeにて公開しています。ライセンスはMIT Licenseです。
まとめ
使い勝手はなるべくJavaScript SDKに寄せていきます。React Nativeを使った開発でもNCMBをご活用ください!