类型错误:null 不是对象(计算"data[sub_props[i]]]")



我正在构建一个反应原生应用程序,但遇到了此错误。我检查了日志,发现数据[sub_props[i]]导致以下问题:

"var": function _var(a, b) {
  var not_found = b === undefined ? null : b;
  var sub_props = String(a).split(".");
  var data = this;
  for (var i = 0; i < sub_props.length; i++) {
    data = data[sub_props[i]];
    if (data === undefined) {
      return not_found;
    }
  }
  return data;
},

我无法理解导致此错误的原因。任何帮助,不胜感激。谢谢。我正在安卓平台上构建它。

反应本机 CLI:2.0.1反应原生:0.46.4

这一行基本上破坏了data数组并将其分配给单个值(可能null),未来的迭代尝试迭代不可迭代或null的对象。

data = data[sub_props[i]];

最好创建一个新变量来分配data[sub_props[i]],例如temp

var data = this;
var temp;
for (var i = 0; i < sub_props.length; i++) {
   temp= data[sub_props[i]];
   if (temp=== undefined) {
      return not_found;
   }
 }
 return temp;

相关内容

  • 没有找到相关文章

最新更新