我在 react native 中使用 NavigatorIOS 时遇到了一些问题。如果我将我的组件放在初始路由中,它工作得很好,但是如果我尝试从另一个组件访问它,它会给我这个错误:
元素类型无效:需要字符串(对于内置组件(或类/函数(对于复合组件(,但得到:对象。 检查"导航IOS"的渲染方法。
这是代码:
import React, { Component, PropTypes } from 'react';
import Dimensions from 'Dimensions';
import {
AppRegistry,
StyleSheet,
Image,
TouchableHighlight,
NavigatorIOS,
FadeInView,
Text,
View
} from 'react-native';
import Menu from './Menu.ios';
class Home extends React.Component {
constructor(props, context) {
super(props, context);
this.onForward = this.onForward.bind(this);
}
onForward(Menu){
this.props.navigator.push({
component: Menu,
title: 'Menu',
navigationBarHidden: true,
});
}
render() {
return (
<View style={styles.container}>
<Image
style={styles.img}
source={require('./img/scrittaNera.png')}
onLoadStart={(e) => this.setState({loading: true})}
/>
<TouchableHighlight style={styles.button} onPress={this.onForward.bind(this)}>
<Text style={styles.buttonText}>Get Inspired</Text>
</TouchableHighlight>
</View>
);
}
}
只需从中删除菜单 onForward(Menu) {
.
参数 菜单 阴影使用 import Menu from './Menu.ios';
导入的组件。