#author("2017-05-12T11:36:58+00:00","default:admin","admin")
#author("2023-03-15T02:50:13+00:00","default:admin","admin")
-[[React Native:https://facebook.github.io/react-native/]]

-[[React Nativeで変わるアプリ開発 高木 健介 先生 - Schoo(スクー):https://schoo.jp/class/3815]]

-[[React Nativeとネイティブアプリでの開発の違いとは:https://techacademy.jp/magazine/11652]]
-[[ReactNativeで何が出来るのかさっと知れるサイト、その他リンクまとめ:http://qiita.com/imaimiami/items/8e62a5111fe48a65b911]]
-[[React Nativeはアプリ開発者の夢を見るか? - アニマネ開発日誌:http://animane.hatenablog.com/entry/2016/07/24/181833]]

-React native meetup ... プレゼン資料が見れる
--[[React.js meetup × React Native meetup:https://react-native-meetup.connpass.com/event/49024/]]
---[[What is React Native?:https://speakerdeck.com/januswel/what-is-react-native]]
--[[react-native meetup#4:https://react-native-meetup.connpass.com/event/46778/]]
--[[react-native meetup#3:https://react-native-meetup.connpass.com/event/40745/]]
--[[react-native meetup#2:https://react-native-meetup.connpass.com/event/32213/]]
--[[react-native meetup#1:https://react-native-meetup.connpass.com/event/30484/]]

-[[create-react-native-app触ってみた!!:http://qiita.com/Shagamii/items/c3205bb64ccaa5258077]]
-[[create-react-native-appとexpoを使って10分でプッシュ通知を試す:http://qiita.com/taco/items/4a47704778ca6d96d46f]]
-[[React Nativeアプリの開発環境をコマンド一発で構築する「create-react-native-app」:https://mae.chab.in/archives/59673]]

-[[Expo、iPhoneなどでReact Nativeアプリのリアルタイムプレビューが可能なPlaygroundサービス「Expo Sketch」を公開:http://applech2.com/archives/20170316-playground-for-react-native.html]]
-[[Expo Sketch:https://snack.expo.io]] ... ここでコードを変更して保存する度に新規URLが発行されるので、これを通知すれば他の人に共有できる

-[[ReactNative とFlutter パフォーマンス比較:https://recruit.gmo.jp/engineer/jisedai/blog/reactnative-vs-flutter-performance/]]
-[[React Native導入ガイド - 環境構築からクロスプラットフォーム開発のメリットまでを理解する:https://eh-career.com/engineerhub/entry/2020/02/06/103000]]
-[[【入門】はじめての React Native:https://qiita.com/nskydiving/items/41e446ef5c821359ab79]]

-[[React Nativeでメモアプリを作ろう~作成画面の構築と実データの利用:https://codezine.jp/article/detail/12328]]


*開発 [#e7a7b478]
**環境構築からプロジェクト作成、実行まで [#t2cf343e]
-create-react-native-app のインストール
 $ npm install -g create-react-native-app
-スマートフォンにExpoをインストール
--Google Play などで「Expo」を検索してインストール
--わからない場合は[[Expo:https://expo.io]] のサイトを参照のこと
-プロジェクト作成
 $ create-react-native-app [プロジェクト名]
-プロジェクト起動
 $ cd [プロジェクト名]
 $ nom start
-起動すると大きなQRコードが表示される
-スマートフォンでExpoを起動し、QRコードを読み込むとアプリが実行される(読み込みには時間がちょっと時間がかかる)

-App.js が index.js に相当
-以下のような従来のプログラムの場合、最後に「export default [クラス];」を追記
         :
 const SimpleApp = StackNavigator({
   Home: { screen: MainScreenNavigator },
   Chat: { screen: ChatScreen },
 });
 
 AppRegistry.registerComponent('SimpleApp', () => SimpleApp);
 
 export default App;  <== これを追記

**スタンドアローン版へのビルド [#nb5fa1e4]
-[[Building Standalone Apps - Expo:https://docs.expo.io/versions/v15.0.0/guides/building-standalone-apps.html]]

-exp のインストール
 $ npm install -g exp

*Navigation [#udff2421]
やり方が乱立していてどれを選んだらいいのやら...

-[[React.js × React Native meetup アンケート質問に答えたい:http://qiita.com/janus_wel/items/6bc7263f47c6221f52c1]] ... これの一番最後に Navigation に関するQAがある
-[[ReactNativeでページ遷移(ルーティング)を実装する:https://blog.mismithportfolio.com/web/20161224rnrouting]]
-[[ReactNativeでページ遷移(ルーティング)を実装する②:https://blog.mismithportfolio.com/web/rnrouting2]]

-[[react-navigation:https://reactnavigation.org/]]([[docs:https://reactnavigation.org/docs/intro/]])
--元は [[Expo:https://expo.io]] が作った [[ExNavigation:https://github.com/expo/ex-navigation]] らしい
--画面コンポーネントにナビゲーション用のデータを定義しなければならない
--とりあえず [[Getting Started:https://reactnavigation.org/docs/intro/]] をやってみよう!

-[[react-router-native:https://github.com/ReactTraining/react-router/tree/master/packages/react-router-native]]
--react-router の Native版なので、知見や感覚を使いまわせるのがメリット
--あまりネイティブとして自然な遷移にならないという噂

-[[react-native-router-flux:https://github.com/aksonov/react-native-router-flux]]
--簡単な遷移であればサッと作れるが、少し複雑なことをしようとすると難しくなる
--テストが非常に書きにくい

-[[native-navigation:https://github.com/airbnb/native-navigation]]
--React Conf 2017 で大々的にアナウンスされた AirBnB 製
--導入が手間らしい

-[[Navigation:https://facebook.github.io/react-native/docs/navigation.html]]
--標準で提供されている
--状態を持たず、開発者がいい感じに制御できる
--&color(red){0.43以降、非推奨になった};

*Tips [#y81645dc]
-AppRegistry.registerComponent('NativeApp', () => App);
--Native に登録するアプリケーション名と、それに対応するアプリを指定

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS