さわらブログ

さわら(@xhiroga)の技術ブログ

React Native 1ヶ月半やってみての棚卸し

これまでに学んだことの棚卸し。

 

作ったアプリ↓↓

appetize.io


React Native自体について

constで定義したコンポーネントをclassで定義し直すことが多かった。
装飾がメインの役割のものはconstで定義して、props.childrenを表示するのが良さそう。

propsなのかthis.propsなのかがよく分からなかった。
あと、class内でconstを定義できないのもよく分からなかった。クラスのメソッド内なら定義できたけど。

ListViewクラスのdatasouceはコピペで乗り切ってしまった感がある。

reduxでactionのエラーをキャッチしようとすると、そのキャッチの範囲がコンポーネントの再描画あたりまで行き届いてしまう。
(action→reducerで値を書き換え→propsに変更→コンポーネント再描画、までtryの中ってことらしい)

 

iOSについて

http通信を許可するためにinfo.plistに書き込まなければいけないのに気がつくのに時間がかかった。
(info.plist自体も複数あって、どれに書き込むのかよく分からなかった。)

こんな感じにした↓↓

f:id:hiroga_cc:20170721074915p:plain

 

Appetizeにアップロードするまでに時間がかかった。
ローカルのjsbundleを参照させるのに苦労した。公式ドキュメントに当たる癖をつけたい。

ローカルのjsbundleを参照すると、シミュレーターでは出なかったエラーが出る。
(それまでcatchで気づかずに握りつぶしていたもの?)

 

今後の課題

* Expoのアプリ側でのリロード方法が分からない。
* Navigator関連が分からない(俺はreact-native-router-fluxを使っている)
* reduxとasyncStorageを一緒に使うとき、どのタイミングで書き込むのがベストか分からない
* Expoを使うべきなのかreact-native init [アプリ名]でやるべきか迷ってる