Json 反应,无法读取属性';过滤器';未定义的
代码(起作用的代码): 代码2(我想让它工作的代码): 错误代码(使用代码2时发生的错误): log(JSON.stringify(this.props.results)): console.log(this.props.results): const成员数据和json数据都是相同的组件,但我想知道为什么顶部代码有效,而底部代码无效Json 反应,无法读取属性';过滤器';未定义的,json,reactjs,Json,Reactjs,代码(起作用的代码): 代码2(我想让它工作的代码): 错误代码(使用代码2时发生的错误): log(JSON.stringify(this.props.results)): console.log(this.props.results): const成员数据和json数据都是相同的组件,但我想知道为什么顶部代码有效,而底部代码无效 我想使用json数据进行分类,而不是常量成员数据,但它不起作用。如果您知道第一个示例中的成员是数组,请告诉我。在第二个示例中,成员是一个字符串过滤器不是字符串上的
我想使用json数据进行分类,而不是常量成员数据,但它不起作用。如果您知道第一个示例中的
成员是数组,请告诉我。在第二个示例中,成员是一个字符串<代码>过滤器
不是字符串上的方法
要停止显示[Object Object]
,您可以在代码2中执行console.log(JSON.stringify(member))
,成员为string,无法使用string for Filter来完成前面的回答JSON.stringify会将您的对象转换为字符串。将其设置为数组而不是字符串可以解决此问题吗?我们不知道您的道具是什么,但您可以简单地执行以下操作:const member=this.props.results;谢谢,但结果是一样的您知道如何将第二个代码转换成数组而不是字符串吗?您能简单地告诉我吗?将这个const member=JSON.stringify(originData)更改为const member=originData谢谢。但不幸的是,结果是一样的不可能是一样的。这条路行得通。筛选器不会未定义。我们添加了更多内容。如果有必要,我会上传整个代码。
const member = [
{
"key": 14,
"pid": "test3",
"name": "test3",
"gender": "other",
"age": 3
},
{
"key": 13,
"pid": "test4",
"name": "test4",
"gender": "male",
"age": 4
},
{
"key": 12,
"pid": "test5",
"name": "test5",
"gender": "male",
"age": 5
}
]
const print = member.filter(x => x.gender === 'male');
console.log(print);
const originData = this.props.results;
const member = JSON.stringify(originData)
const print = member.filter(x => x.gender === 'male');
console.log(print);
TypeError: Cannot read property 'filter' of undefined
Container.render
D:/test/containers/member/Container.js:426
423 |
424 |
425 |
> 426 | const space = member.filter(x => x.gender === 'male');
| ^ 427 | console.log(space);
[
{"key":14,"pid":"test3","name":"test3","gender":"other","age":3},
{"key":13,"pid":"test4","name":"test4","gender":"male","age":4},
{"key":12,"pid":"test5","name":"test5","gender":"male","age":5}
]