へなちょこSEの考察

0x22歳のへなちょこSEが、日々思うことを考察します。自社内、金融系を経て現在法人系PKG開発に従事。

【Expo (React Native)】Expo SDK 36が出てたので更新してみた

ふと見たらExpoSDKのv36がリリースされてました。

これまでは35を使ってたので更新してみました。

blog.expo.io

こちらの記事を参考に実施。

まずはブランチ切り替え

うまくいかなかったらやなので、ブランチ作りました。

名前はSDK36。まんまです。

ブランチ作ったら、そちらに切り替えます。

expo-cliの更新

まず、expo-cliを最新にする必要があるようなので、こちらを更新します。

npm i -g expo-cli

ちなみにWindowsだとexpoコマンドを一回でも叩いてると上記は失敗しますね。

その場合は再起動してから実行しましょう。

アップグレードコマンドの実行

記事の通り、アップグレードコマンドを実行します。

expo upgrade

で、それだけやって、とりあえず実行。

念のため、

expo start -c

そしたら、React Nativeのバージョンが違うと怒られました。

React Native version mismatch への対応

メッセージを見るとReact Nativeのバージョンが合ってないよと。

よくわからんけどキャッシュの問題っぽい。エラーメッセージに対応方法出てるけど、watchmanがないため実行できない。

watchman watch-del-all ←実行できない

前回似たようなキャッシュ絡みの事象が起きた際は、node_modulesを消したらうまくいったので、それをやってみる。

del node_modules npm i expo start -c

治らない・・・。

react-native-navigationをアップデートする

いろいろググると、react-native-navigationのバージョン違いで起きることがあるらしい。 とりあえず試してみる。

npm i --save react-navigation react-navigation-stack react-navigation-tabs

・・・違うエラー出た。

フォント(アイコン)がロードできないエラー解消

package-lock.jsonを消したらうまくいったよという書き込みを見つけたのでやってみる。

(ただし、その人のはSDK34→35のアップデート)

package-lock.jsonの削除と再npmを実施。

起動しました!!


そこそこ時間かかりましたが、とりあえず起動成功。

ただ、起動したらたくさん黄色いwarningが出ました。

一個ずつ見ていかないとなぁ。