如何使用axios按顺序导入数组中的对象数据



目前,我只能调用某些数组。我把数据的"长度"放在'[]中,但只有最后一个数据出来。(我知道为什么(

如何按顺序将数据从数组中的第一个对象导入到最后一个对象?

p.s数据库:mySQL

  • 从第一个阵列加载数据的Axios代码
const getList = async () => {
axios.defaults.withCredentials = true;
const config = {
headers: {
withCredentials: true,
},
};
try {
//Successful response
const response = await axios.get("url", config);
const data = response.data;
console.log(data);
const id = data[0].BOARD_ID;
const title = data[0].BOARD_TITLE;
const register = data[0].REGISTER_ID;
const date = moment(data[0].REGISTER_DATE).format(
"YYYY MM DD, H:mm:ss a"
);
setBbsData([
{
...bbsData,
id: id,
title: title,
register: register,
date: date,
},
]);
} catch (error) {
//Failed to respond
console.log(error);
}
  • 服务器代码
app.use(cors({ credentials: true, origin: true }));
// api
app.get("url", (req, res) => {
const sqlQuery = "SELECT *FROM BOARD;";
db.query(sqlQuery, (err, result) => {
res.send(result);
});
});
app.listen(PORT, () => {
console.log(`running on port ${PORT}`);
});

数组有一个map方法,允许您对其所有元素进行操作。

setBbsData(
data.map((item) => ({
id: item.BOARD_ID,
title: item.BOARD_TITLE,
register: item.REGISTER_ID,
date: moment(item.REGISTER_DATE).format("YYYY MM DD, H:mm:ss a"),
})),
);

在这里,我们获取每个项目并将它们映射到一个新对象。括号周围的括号是必需的,否则它将被解释为函数体而不是对象。

最新更新