Javascript 为什么我的对象显示在undefined,但它存在!自然反应
我通过react redux调用一个对象数组,并将它们设置为programList,在一个更高级别的组件上,然后将其传递到这里,我通过find()将找到的对象id设置为一个变量,并尝试console.log该信息 当我调用programList时,它是好的,有时当我调用selectedProgram时,它会显示为未定义的,已经很奇怪了,因为我上周从未发生过这种情况 当我只想测试我是否可以通过selectedProgram.title从单个返回的对象(selectedProgram)获取标题时,我得到了未定义的标题,而当我执行object.keys时(我得到了未定义的标题) 我试着把它放在一个新的承诺中,它会起作用,但我也收到了一个未解决的承诺警告。但我很失落,因为我没有改变这个特定的代码,但它不会工作Javascript 为什么我的对象显示在undefined,但它存在!自然反应,javascript,reactjs,react-native,Javascript,Reactjs,React Native,我通过react redux调用一个对象数组,并将它们设置为programList,在一个更高级别的组件上,然后将其传递到这里,我通过find()将找到的对象id设置为一个变量,并尝试console.log该信息 当我调用programList时,它是好的,有时当我调用selectedProgram时,它会显示为未定义的,已经很奇怪了,因为我上周从未发生过这种情况 当我只想测试我是否可以通过selectedProgram.title从单个返回的对象(selectedProgram)获取标题时,我
20:23:32:传入程序Id:5e8860c0-cbe7-11e8-bca0-b7f8a21d1c09
20:23:32:5e8860c0-cbe7-11e8-bca0-b7f8a21d1c09 5e8860c0-cbe7-11e8-bca0-b7f8a21d1c09
数组。原型。find的工作原理稍有不同。为每个项调用回调,并返回第一个为true的项
var programList=[{id:“1”},{id:“2”}];
((programList,programId)=>{
console.log(programId);
//查找与navId具有相同id的正确程序列表以进行映射
const selectedProgram=programList.find(索引=>{
if(index.id==程序id){
log(programmaid,index.id);
返回true;
}
返回false;
});
console.log(selectedProgram);
})(programList,“2”)
这种方式也可以,但是我仍然无法获取键值,当我尝试任何选择的Program.title等时,它会显示undefined。感谢您的尝试,我发现了问题,要比较它的id位于更高级别的组件中,我没有意识到我将其设置为componentdid mount,而不是willmount,因此,当搜索结果时,它没有一个可立即比较的id。