在使用fetch调用中的promise更新组件的状态后,我无法访问对象的属性。当我console.log对象时,我看到它,但当我试图访问属性时,它抛出一个类型错误:不能读取未定义的属性'name'。我尝试了console.log(object.keys(filteredstudents[0])),得到:typeError:不能将undefined或null转换为object
类App extends react.component{constructor(prop){super(prop)this.state={searchfield:'',students:[],menu:'home'}}
componentDidMount() {
fetch('https://jsonplaceholder.typicode.com/users')
.then(response => {
return response.json()
}).then(data => {
// console.log(data);
this.setState({students: data})
}).catch(err => console.log('error', err))
}
render (){
```````````````````````````````````````````````````````````
const filteredStudents = this.state.students
console.log(filteredStudents[0])
console.log(Object.keys(filteredStudents[0]))
````````````````````````````````````````````````````````
);
}
}
}
I expect the output to return the value of any key I try to
access. e.g
console.log(filteredStudents[0].name) -----> 'leanne'
您正在尝试在promise有机会解析和状态更新之前访问fiteredStudents数组中的项。如果您将逻辑包装在条件的内部,即。
if(filteredStudents.length) {
console.log(filteredStudents[0])
console.log(Object.keys(filteredStudents[0]))
}
那就该管用了。
这是我的功能。显示解析错误(data.ops[0])
我的代码: 错误: 未处理PromisejectionWarning:TypeError:无法读取未定义的未处理PromisejectionWarning:未处理的promise拒绝的属性“forEach”。此错误源于在没有catch块的情况下抛出异步函数的内部,或者拒绝使用未处理的promise。catch()。(拒绝id:1)(节点:7188)[DEP0018]弃用警告:未处理的promise
我正在尝试将我的react表单上载到状态,以便获取具有这些凭据的API 我尝试创建一个如下所示的函数:
我试图使一个对话框弹出每当我得到一个错误从myerrorhandler我可以看到调用,但不是 这是我的错误消息。 错误类型错误:无法读取未定义的属性'openDialogTEST' 奇怪的是,如果我用按钮调用它,一切都很好。这是我的课程: usertable.component.ts auth.service.ts myerrorHandle.ts 对话框.component.ts 完整错误消息:
我正在学习Mosh Hamedani的教程“角度4:初学者到专业”。 当我试图编辑一个产品时,我试图在一个表单中显示它的标题。该产品存储在firebase数据库中。我是新来的Angular。 但是,当我转到编辑表单时,控制台中会出现此错误 这是我表格的一部分: 这是产品表单.组件.ts 怎么做才能显示产品的标题?
请注意,我在react ProductScreen.js中呈现动态数据时有问题 注意,...数据在product.js中呈现得很好,但相同的数据在productscreen.js中不会呈现,因为productscreen.js链接是通过“id”呈现的。 谢谢app.js 导入“./homescreen.css”;从'../Components/Product'导入产品从'React'导入{useE