react-native JSON数据找不到变量报错

1、应用场景
store init
initData = {
userInfo: {}, // 初始化定义
}

const {userInfo} = this.props.Store;
<View>
  <Text>{userInfo.data.name}</Text>
// 报错name找不到
</View> 

小方法:

var obj = {data: {person: {name: 'lily', age: 30}}};
var arr = ["data", "person", "name"];
var default_data = 'N/A';


function formatObj(target_obj, arr, default_data){
  let target = target_obj;
  for(let i=0; i< arr.length; i++){
    if(!target.hasOwnProperty(arr[i])){
      return default_data;
    }
    target = target[arr[i]]
  }
  return target;
}

console.log(formatObj(obj, arr, default_data));
// 再也不用一层一层的判断了
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容