Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 与MobX反应:未处理的拒绝(TypeError):project.record.comments.map不是函数_Javascript_Reactjs_Mobx - Fatal编程技术网

Javascript 与MobX反应:未处理的拒绝(TypeError):project.record.comments.map不是函数

Javascript 与MobX反应:未处理的拒绝(TypeError):project.record.comments.map不是函数,javascript,reactjs,mobx,Javascript,Reactjs,Mobx,我的存储有一个初始值设置为空数组的项 在store构造函数中,我从API加载数据 当我尝试在React组件中迭代该数组时,有时(有时有效,有时无效)会出现异常: 未处理的拒绝(TypeError):project.record.comments.map不是一个函数 存储文件 类记录存储{ @可观察的评论=[]; 构造函数(){ this.loadComments(); } loadComments=async()=>{ 常量api=新的精炼api(); const comments=wait a

我的存储有一个初始值设置为空数组的项

在store构造函数中,我从API加载数据

当我尝试在React组件中迭代该数组时,有时(有时有效,有时无效)会出现异常:

未处理的拒绝(TypeError):project.record.comments.map不是一个函数

存储文件

类记录存储{
@可观察的评论=[];
构造函数(){
this.loadComments();
}
loadComments=async()=>{
常量api=新的精炼api();
const comments=wait api.getComments(
这个.documentCode,
这个项目
);
this.comments=comments.data | |[];
};
反应组分

const ListComments=()=>{
const project=useContext(projectStore);
返回(
{project.record.comments.map((项)=>(
))}
);
};
注意:我实际上有两个存储区:project(主存储区)和record。在project存储区中,我有一个可观察的记录,其中我将第二个存储区设置为参考。您可以从上面的
project.record.comments

我随机得到的例外情况似乎取决于对API的请求的处理速度:
未处理的拒绝(TypeError):project.record.comments.map不是一个函数

好吧,有时您的api响应似乎不正确。您是否尝试记录获得异常后等待得到的结果,并将其与您预期的结果进行比较?Danila,您说得对。确实,我的api返回了HTTP 200,但内部存在异常,而不是预期的数据