我也刚上手 UTS,花了十几分钟也弄了个request请求,准备要搜索另外一个问题,看到你的问题,我给下我实现代码
type chatMessages = {
chat_message_id : number,
chat_index_id : number,
chat_type : number,
text : string,
audio_id ?: string | null,
created_at : number
}
type chatList = {
chat_index_id : number,
title : string,
user_id : number,
created_at : number,
chat_messages_one ?: chatMessages
}
type requestBody = {
code : number,
msg : string,
data : chatList[]
}
......
data() {
return {
chatMessageList: [] as chatList[],
loadingError: '',
loading: true
}
}
.......
uni.request<requestBody>({
url: 'http://192.168.2.100:8787/index/jsondata',
success: (res) => {
console.log(res.data)
console.log(res.data instanceof requestBody) //打印返回数据是否 Type 类型
console.log(res.data?.data) //因为联网数据不可控,转换可能失败,所以这里需要用?.的方式做安全访问
const responseData = res.data
if (responseData == null) {//没有数据或者转换失败
return
}
this.chatMessageList.push(...responseData.data);//push 数据
}, fail: (err) => {
this.loadingError = err.errMsg
console.error(err);
},
complete: () => {
this.loading = false
}
});
接口返回 json 数据示例
{
"code": 0,
"msg": "ok",
"data": [
{
"chat_index_id": 67,
"title": "你看我像月亮吗",
"user_id": 1001,
"created_at": 1711901367,
"updated_at": null,
"chat_messages_one": {
"chat_message_id": 130,
"chat_index_id": 67,
"chat_type": 3,
"text": "这个问题更像是一个比喻或者是在寻求某种比喻意义的回答。在文学中,月亮常常象征着美丽、宁静或者神秘。如果你在问是否像月亮那样有特别的品质或特征,那可能需要更具体的上下文来回答。不过,每个人都有自己的独特之处,就像月亮在不同的夜晚有着不同的光芒。",
"audio_id": null,
"created_at": 1711901370
}
},
{
"chat_index_id": 66,
"title": "拟人化描写",
"user_id": 1001,
"created_at": 1711901354,
"updated_at": null,
"chat_messages_one": {
"chat_message_id": 128,
"chat_index_id": 66,
"chat_type": 3,
"text": "月亮可以被拟人化为一个温柔的守护者,或者是一个寂静的诗人。比如,你可以这样描述:“月亮像一位慈祥的老者,静静地在夜空中守望着大地,洒下银色的光芒,仿佛在低声讲述着古老的传说。”又或者,“月亮是一位神秘的舞者,她在天空的舞台上轻盈起舞,时而躲进云层后,时而又露出微笑的脸庞,给寂静的夜晚带来诗意。”这样的描写既富有想象力,又能帮助描绘出月亮的特质。",
"audio_id": null,
"created_at": 1711901359
}
}
]
}
v***@163.com (作者)
data() {
return { list: {},
}
},
2024-04-01 21:27