Reactjs 如何在React Native中将参数传递到其他屏幕?
我的React Js技能非常基本,我想得到的是,当我点击一个类别时,我会在一个新屏幕中显示一个类别的帖子列表,在这个例子中是PostsScreen 问题是我得到的itemId为null 我不知道我做错了什么 类别屏幕Reactjs 如何在React Native中将参数传递到其他屏幕?,reactjs,react-native,react-router,react-redux,Reactjs,React Native,React Router,React Redux,我的React Js技能非常基本,我想得到的是,当我点击一个类别时,我会在一个新屏幕中显示一个类别的帖子列表,在这个例子中是PostsScreen 问题是我得到的itemId为null 我不知道我做错了什么 类别屏幕 import React, {Component} from 'react'; import { NavigationActions, DrawerNavigator, StackNavigator } from 'react-navigation'; import{Dimens
import React, {Component} from 'react';
import { NavigationActions, DrawerNavigator, StackNavigator } from 'react-navigation';
import{Dimensions, Button, View, SafeAreaView, FlatList, ActivityIndicator, TouchableOpacity } from 'react-native';
export default class WGoals extends Component {
static navigationOptions = {
title: 'Categories'
};
navigateToScreen = (route, params) => () => {
const navigateAction = NavigationActions.navigate({
routeName: route,
params: params
});
this.props.navigation.dispatch(navigateAction);
}
constructor(props)
{
super(props);
this.state = {
isLoading: true,
}
}
render() {
return (
<Container style={styles.background_general}>
<TouchableOpacity onPress={this.navigateToScreen('PostsScreen', itemId = '1')} >
<Text>Category 1</Text>
</TouchableOpacity>
<TouchableOpacity onPress={this.navigateToScreen('PostsScreen', itemId = '2')} >
<Text>Category 2</Text>
</TouchableOpacity>
</Container>
);
}
}
import React, {Component} from 'react';
import { NavigationActions, DrawerNavigator, StackNavigator } from 'react-navigation';
import{Dimensions, View, SafeAreaView, FlatList, ActivityIndicator } from 'react-native';
export default class Posts extends Component {
static navigationOptions = {
title: 'Posts'
};
render() {
const { params } = this.props.navigation.state;
const itemId = params ? params.itemId : null;
return (
<Container style={styles.background_general}>
<Text>Details Screen</Text>
<Text>itemId: {JSON.stringify(itemId)}</Text>
</Container>
);
}
}
import React,{Component}来自'React';
从“react navigation”导入{NavigationActions、DrumerNavigator、StackNavigator};
从“react native”导入{维度、按钮、视图、安全区域视图、平面列表、ActivityIndicator、TouchableOpacity};
导出默认类WGoals扩展组件{
静态导航选项={
标题:“类别”
};
导航屏幕=(路线,参数)=>()=>{
const navigateAction=NavigationActions.navigate({
routeName:route,
params:params
});
这个.props.navigation.dispatch(navigateAction);
}
建造师(道具)
{
超级(道具);
this.state={
孤岛加载:是的,
}
}
render(){
返回(
第一类
第2类
);
}
}
发布屏幕
import React, {Component} from 'react';
import { NavigationActions, DrawerNavigator, StackNavigator } from 'react-navigation';
import{Dimensions, Button, View, SafeAreaView, FlatList, ActivityIndicator, TouchableOpacity } from 'react-native';
export default class WGoals extends Component {
static navigationOptions = {
title: 'Categories'
};
navigateToScreen = (route, params) => () => {
const navigateAction = NavigationActions.navigate({
routeName: route,
params: params
});
this.props.navigation.dispatch(navigateAction);
}
constructor(props)
{
super(props);
this.state = {
isLoading: true,
}
}
render() {
return (
<Container style={styles.background_general}>
<TouchableOpacity onPress={this.navigateToScreen('PostsScreen', itemId = '1')} >
<Text>Category 1</Text>
</TouchableOpacity>
<TouchableOpacity onPress={this.navigateToScreen('PostsScreen', itemId = '2')} >
<Text>Category 2</Text>
</TouchableOpacity>
</Container>
);
}
}
import React, {Component} from 'react';
import { NavigationActions, DrawerNavigator, StackNavigator } from 'react-navigation';
import{Dimensions, View, SafeAreaView, FlatList, ActivityIndicator } from 'react-native';
export default class Posts extends Component {
static navigationOptions = {
title: 'Posts'
};
render() {
const { params } = this.props.navigation.state;
const itemId = params ? params.itemId : null;
return (
<Container style={styles.background_general}>
<Text>Details Screen</Text>
<Text>itemId: {JSON.stringify(itemId)}</Text>
</Container>
);
}
}
import React,{Component}来自'React';
从“react navigation”导入{NavigationActions、DrumerNavigator、StackNavigator};
从“react native”导入{Dimensions,View,SafeAreaView,FlatList,ActivityIndicator};
导出默认类扩展组件{
静态导航选项={
标题:“帖子”
};
render(){
const{params}=this.props.navigation.state;
const itemId=params?params.itemId:null;
返回(
详细信息屏幕
itemId:{JSON.stringify(itemId)}
);
}
}
更改函数的参数
this.navigateToScreen('PostsScreen', itemId = '1')
到