无法完成这项工作,交叉检查所有参考文献,但它没有帮助。以下是该视图的所有代码。
我不确定我缺少什么,需要所有依赖项。
var React = require('react-native');
var Delivery = require('./Delivery');
var {
View,
Text,
StyleSheet,
TouchableHighlight,
} = React;
class ListItem extends React.Component{
showDetails(){
this.props.navigator.push({
title: "Delivery details",
component: Delivery
});
}
render(){
return(
<TouchableHighlight onPress={this.showDetails.bind(this)} >
<View style={styles.listItem}>
<View style={styles.listContents}>
<Text style={styles.listHead}>JMD Megapolis</Text>
<Text style={styles.listAddress}>1109, Sector 48, Sohna Road, Gurgaon 122018</Text>
<Text style={styles.listMeta}>2Kms from store</Text>
</View>
<View style={styles.listCost}>
<Text style={styles.cost}>₹40</Text>
</View>
</View>
</TouchableHighlight>
)
}
}
module.exports = ListItem;
答案 0 :(得分:12)
如果你像这样调用ListView组件,它应该可以工作。 NavigatorIOS已经向下传递了参考(但只有一个级别/代)。
<NavigatorIOS
initialRoute={{
title: 'List View Component',
component: ListView,
}} />
但是如果你从NavigatorIOS引用的组件的子组件中调用ListView组件,请尝试这样做。从NavigatorIOS引用的组件中,您可以在其中调用<ListView />
添加导航器属性。
<ListView navigator={this.props.navigator} />
您需要记住在子组件中传递要访问的属性,因此如果要从NavigatorIOS未直接引用的组件更改<NavigatorIOS />
中显示的组件,则需要传递导航器属性如上所述。
希望这会有所帮助。