react-native - TypeError:无法读取未定义的属性“设置”(react-native)
问题描述
当我尝试获取settings
. params
我应该如何解决这个问题?
这有效:
const { params } = this.props.navigation.state;
console.log('from settings: ', params);
来自设置:{settings: {…}} 设置:{allDate: true, searchWord: "", todayNews: false, popularSorting: false, favoritesSorting: false}
但是,当我尝试记录 的设置属性时params
,出现此错误:
const { params } = this.props.navigation.state;
console.log('from settings: ', params.settings);
TypeError:无法读取未定义的属性“设置”
解决方案
这是传递和接受参数的正确方法
let id, name; //declare variables
export default class App extends React.Component {
constructor(props) {
super(props);
this.state = {
id: 0,
name: ''
};
let { params } = this.props.navigation.state;
id = params ? params.id : null; //set var if params.id exists else null
name = params ? params.name : null;
}
componentDidMount() {
this.setState({ id: id, name: name });
}
render() {
return(
<View>
{ this.state.id }
{ this.state.name }
</View>
);
}
}
推荐阅读
- c++ - 在 C++ 中使用 initializer_list 自动
- laravel - 不显示来自公用文件夹 laravel 的图像
- python - Python-如何只显示一次for循环?
- javascript - Bootstrap modal 没有从 JS 代码中第二次关闭
- php - 在 WooCommerce 3 中的特定运输方式下方添加一个复选框
- node.js - 在 NodeJS 中使用 do-while 循环检查 Firebase 数据库中是否存在
- c# - 替换字节数组中的多个字节
- stripe-payments - Stripe 托管的发票是否始终公开可见?有没有办法将其设为私有?
- javascript - 如何在javascript中的给定日期获得下个月的同一天(不是JQuery)
- reactjs - 滚动到一个位置并在本机反应中设置左右箭头