undefined 不是对象(正在计算 'this.props.navigator.push')
undefined is not an object (evaluating 'this.props.navigator.push')
无法完成这项工作,已交叉检查所有参考资料,但没有帮助。这是视图的所有代码。
我不确定我缺少什么,需要所有依赖项。
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;
如果您像这样调用 ListView 组件,它应该可以工作。 NavigatorIOS 已经向下传递引用(但只有一个 level/generation)。
<NavigatorIOS
initialRoute={{
title: 'List View Component',
component: ListView,
}} />
但是,如果您从 NavigatorIOS 引用的组件的子组件中调用 ListView 组件,请试试这个。从 NavigatorIOS 引用的组件中,您调用 <ListView />
添加导航器 属性.
<ListView navigator={this.props.navigator} />
你需要记住在子组件中传递你想要访问的属性,所以如果你想从 NavigatorIOS 不直接引用的组件更改 <NavigatorIOS />
中显示的组件,那么你需要通过导航器 属性 像上面一样向下。
希望这对您有所帮助。
无法完成这项工作,已交叉检查所有参考资料,但没有帮助。这是视图的所有代码。
我不确定我缺少什么,需要所有依赖项。
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;
如果您像这样调用 ListView 组件,它应该可以工作。 NavigatorIOS 已经向下传递引用(但只有一个 level/generation)。
<NavigatorIOS
initialRoute={{
title: 'List View Component',
component: ListView,
}} />
但是,如果您从 NavigatorIOS 引用的组件的子组件中调用 ListView 组件,请试试这个。从 NavigatorIOS 引用的组件中,您调用 <ListView />
添加导航器 属性.
<ListView navigator={this.props.navigator} />
你需要记住在子组件中传递你想要访问的属性,所以如果你想从 NavigatorIOS 不直接引用的组件更改 <NavigatorIOS />
中显示的组件,那么你需要通过导航器 属性 像上面一样向下。
希望这对您有所帮助。