TypeError:无法读取属性'设置'未定义的(反应原生)

时间:2018-05-20 11:02:40

标签: react-native

当我尝试获取settings params属性时,下面的代码会给出TypeError。我该如何解决这个问题?

这有效:

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:无法读取属性'设置'未定义的

2 个答案:

答案 0 :(得分:0)

这有效:

render() {
 const { params } = this.props.navigation.state;
    return (
           <Text>{params && params.settings 
? params.settings.searchWord 
: null}</Text>
           <Text>{params && params.settings 
? params.settings.allDate 
: null}</Text>
           <Text>{params && params.settings 
? params.settings.todayNews 
: null}</Text>
           <Text>{params && params.settings 
? params.settings.popularSorting 
: null}</Text>
           <Text>{params && params.settings 
? params.settings.favoritesSorting 
: null}</Text>
  )
}

答案 1 :(得分:0)

这是传递和接受参数的正确方法

test.join(train.select('a', 'aml_freq_a'), ['a'], 'left') \
    .join(train.select('b', 'aml_freq_b'), ['b'], 'left') \
    .join(train.select('c', 'aml_freq_c'), ['c'], 'left')