1.首先AppRegistry是用来表示RN的入口;
2.入口文件是index.js
3.更改入口js,只需要更改AppRegistry的注册组件.
*这里有坑,很容易出现错误.
Uncaught Error: Invariant Violation: Element type is invalid: expected a string
首先,检查入口的控件类名有没问题(把入口从./App改为./index.ios),有没有export出来.然后
import {MyNavigatior} from './index.ios';
AppRegistry.registerComponent('your project name', () => MyNavigatior);
还有,没有用到的控件不要注册,要不也会报错
一个js文件可以有多个class,但是只能有一个export出来,注册组件就是注册export出来的那个class
还有一种写法:
require('./appPage/HomePageTabbarHidden')
这样会自动注入路径的js控件的export class.效果和上述一样(组件内不要忘记注册).
参考:https://stackoverflow.com/questions/36501856/uncaught-error-invariant-violation-element-type-is-invalid-expected-a-string