react-native编写过程遇到的问题及解决方法

1.使用React某个组件前记得在  
var {
  AppRegistry,
  NavigatorIOS,
  StyleSheet,
    Image,
    View,
} = React;

这个地方里填一下
2.执行init时不要在前面加上sudo(否则新项目的目录所有者会变为root而不是当前用户,导致一系列权限问题,可以用chown修复)
3.报错EACCES: permission denied, open 'Users/你的用户名/.babel.json'时候执行如下命令: sudo chown 你的用户名 ~/.babel.json

4.如何升级RN版本?

A:请用编辑器打开项目目录中的package.json,找到类似下面的一行配置

"react-native": "0.11.0",
将其改为要升级的版本号,如“0.12.0-rc”(当然要先确定这个版本已经发布到npm上了)。

然后在当前目录的命令行中执行npm i

如果提示权限错误则在前面加上sudo

5.报错:Invariant Violation:Application XXXX has not been registered.

A:请确保index.ios.js中的

AppRegistry.registerComponent('项目名',() => ...);
与appDelegate.m中的

RCTRootView*rootView = [[RCTRootViewalloc]initWithBundleURL:jsCodeLocation

moduleName:@"项目名" launchOptions:launchOptions];

6.调试模式下报错:Runtime is not ready. Make sure...或是socket closed.

A:有时Chrome进程会失去响应,可以尝试手动将Chrome的React Native Debugger标签切换到前台再Reload模拟器页面。

7.报错:Adjacent JSX elements must be wrapped in an enclosing tag.

A:render方法中必须只能包含一个根元素。

你可能感兴趣的:(RN)