【发布时间】:2020-04-04 19:52:03
【问题描述】:
我正在尝试从我的 api 获取数据并将其呈现为列表,但它不断给我标题中提到的错误。
import React, { Component } from "react";
import "./style/list.css";
import { getEvents } from "../services/eventService";
import { thisExpression } from "@babel/types";
class Likes extends Component {
constructor(props) {
super(props);
this.state = {
events: []
};
}
async componentWillMount() {
const { data: events } = await getEvents();
this.setState({ events });
console.log(events);
}
async getUserLikes() {
// Get Likes TODO
return 1;
}
render() {
return (
<div>
<ul class="list-group">
{this.state.events.map(event => (
<li
class="list-group-item d-flex justify-content-between align-items-center"
key={event._id}
>
{event.title}
<span class="badge badge-primary badge-pill">
{this.getUserLikes()}
</span>
</li>
))}
</ul>
</div>
);
}
}
export default Likes;
虽然很奇怪,似乎当我从渲染中删除 getUserLikes() 函数时,映射工作,但当我添加它时,它没有。
【问题讨论】:
-
这是
getUserLikes的真实代码吗?或者你正在执行它的请求? -
起初是一个请求,但我删除了它以查看问题出在哪里。即使使用像这样的 getUserLikes 它也不起作用,但一旦删除它就会起作用
-
如果您删除
async标志并返回1它将起作用。但对于您的实际用例,它不会 -
您是否偶然检查过official tutorials 的主题?
标签: javascript reactjs