映射未定义的 ReactJS 代码中的待办事项列表应用程序
Map undefined in ReactJS code for todo list app
我刚开始用ReactJS编码,必须构建一个待办事项应用程序。现在,显示从 API 调用收到的待办事项时出现问题。这是我得到的错误:
未捕获的类型错误:无法读取未定义的属性"映射"
这是代码:
待办事项列表.js
import React from 'react';
import $ from 'jquery';
import TodoItem from './TodoItem';
class TodoList extends React.Component {
constructor() {
super();
this.state = {
todos: [
{id: 0, title: "", completed: false}
]
};
}
componentDidMount() {
this.loadTodos();
}
loadTodos(event) {
let component = this;
$.getJSON(`https://whispering-thicket-55256.herokuapp.com/todos.json`, function(data) {
console.log(data);
component.setState({
todos: data.todos
});
});
}
renderTodos(todo, i) {
return (
<TodoItem
key={todo.id}
id={todo.id}
title={todo.title}
completed={todo.completed}
createdAt={todo.created_at}
updatedAt={todo.updated_at} />
);
}
render() {
let todos = this.state.todos
return (
<div>
<ul>
{todos.map(this.renderTodos.bind(this))}
</ul>
</div>
);
}
}
export default TodoList;
待办事项.js
import React from 'react';
import jQuery from 'jquery';
class TodoItem extends React.Component {
componentDidMount() {
this.setState({
id: this.props.id,
title: this.props.title,
completed: this.props.completed,
createdAt: this.props.createdAt,
updatedAt: this.props.updatedAt
})
}
render() {
console.log(this.props);
return (
<li>{this.props.title}</li>
);
}
}
export default TodoItem;
我看不出我在这里做错了什么..希望有人能帮助我。我想要实现的是在一个列表中显示来自 .json url 的所有待办事项。如果您需要更多代码(app.js?),那么我也会发布!
谢谢!
可能是调用
渲染时未初始化待办事项,或者您的 Ajax 调用未返回预期内容。
尝试在渲染之前检查是否定义了待办事项
todos && todos.map...
还要检查您的 Ajax 响应是否是您需要的。
相关文章:
- 从HTTPGET返回一个自定义对象列表,以便在Angular 2应用程序中使用
- 谷歌应用程序脚本示例-如何更改单选按钮的列表框相关值
- 谷歌表单-根据分配给谷歌应用程序的工作为商业用户预先填充多项选择列表
- 使用谷歌应用程序脚本制作基于谷歌电子表格的带有列表框的网络应用程序
- Metro 应用程序中的列表视图项目单击
- 使用peta poco ORM在MVC应用程序中创建选择列表
- 访问可扩展QML应用程序中的列表视图索引
- 谷歌应用程序脚本web应用程序动态列表从表单
- JavaScript从应用程序获取SharePoint联机列表
- 应用程序脚本-自动从谷歌驱动器删除超过3天的文件-获取文件列表
- 选中的Angular HTML列表将所选值放入应用程序范围的变量和跨度中
- 如何在Sencha Touch应用程序的选择字段内自定义列表
- 主队/客队,在主干.js应用程序中提供球员列表
- 在待办事项列表应用程序中设置更新
- 使用JavaScript控制iOS网络应用程序中列表的垂直滚动和水平滑动
- AngularJS待办事项列表应用程序
- 可以't运行播放列表应用程序
- 来自codeccourse的Laravel待办事项列表应用程序
- 映射未定义的 ReactJS 代码中的待办事项列表应用程序
- 编辑和删除动态生成的列表项目在jQuery待办事项列表应用程序