Get started with React Native-001, reactnative-001
Http://facebook.github.io/react-native/docs/getting-started.html#content
Requirements
- OS X-This repo only contains the iOS implementation right now, and Xcode only runs on Mac.
- New to Xcode? Download it from the Mac App Store.
- Homebrew is the recommended way to install node, watchman, and flow.
brew install node
. New to node or npm?
brew install watchman
. We recommend installing watchman, otherwise you might hit a node file watching bug.
brew install flow
. If you want to use flow.
Quick start
npm install -g react-native-cli
react-native init AwesomeProject
In the newly created folderAwesomeProject/
- Open
AwesomeProject.xcodeproj
And hit run in Xcode
- Open
index.ios.js
In your text editor of choice and edit some lines
- Hit cmd + R (twice) in your iOS simulator to reload the app and see your change!
Congratulations! You 've just successfully run and modified your first React Native app.
Create a project
Initial Project Structure
#import "AppDelegate.h"#import "RCTRootView.h"@implementation AppDelegate- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{ NSURL *jsCodeLocation; // Loading JavaScript code - uncomment the one you want. // OPTION 1 // Load from development server. Start the server from the repository root: // // $ npm start // // To run on device, change `localhost` to the IP address of your computer, and make sure your computer and // iOS device are on the same Wi-Fi network. jsCodeLocation = [NSURL URLWithString:@"http://localhost:8081/index.ios.bundle"]; // OPTION 2 // Load from pre-bundled file on disk. To re-generate the static bundle, run // // $ curl http://localhost:8081/index.ios.bundle -o main.jsbundle // // and uncomment the next following line // jsCodeLocation = [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"]; RCTRootView *rootView = [[RCTRootView alloc] initWithBundleURL:jsCodeLocation moduleName:@"AwesomeProject" launchOptions:launchOptions]; self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds]; UIViewController *rootViewController = [[UIViewController alloc] init]; rootViewController.view = rootView; self.window.rootViewController = rootViewController; [self.window makeKeyAndVisible]; return YES;}