Hallo Leute,
ich arbeite daran, die 3 Top-Themen mit den meisten aktiven Antworten in den letzten 30 Tagen zu erhalten. Ich möchte nur diese Themen anzeigen und passe das Showcase Category Plugin an. Auf der JS-Seite habe ich den folgenden Code ausgeführt, aber anscheinend gibt er ein Promise zurück. Kann mir jemand sagen, wie ich das machen kann?
showcased-topic-list.js
this.store.findFiltered("topicList", filter).then((topicList) => {
var idaas = [];
var final_arr = [];
topicList.topics = topicList.topics.forEach(async (t) => {
const response = await ajax(`/t/${t.id}/posts.json`).then(async (result) => {
await result.post_stream.posts.forEach((p) => {
let date1 = new Date();
let date2 = new Date(p.created_at);
let Difference_In_Time = date1.getTime() - date2.getTime();
let Difference_In_Days = Difference_In_Time / (1000 * 3600 * 24);
if (Difference_In_Days <= 30) {
idaas.push(result.id);
}
});
return idaas;
});
final_arr.push(response);
});
});
example:
var smallarrq = ['71782', '72307'];
this.set(
"topicList",
topicList.topics.filter((t) => smallarrq.includes(t.id)).slice(0, settings.max_list_length)
);
Ich möchte, dass dieses final_arr-Array wie das obige smallarrq-Array aussieht, aber es gibt ein Promise zurück.
Bitte helft mir, Leute, ich mache das schon seit vielen Tagen
Danke,