Bonjour à tous,
Je travaille pour obtenir les 3 sujets qui ont le plus de réponses actives au cours des 30 derniers jours. Je veux afficher uniquement ces sujets et je personnalise le plugin “showcase category”. J’ai exécuté le code ci-dessous côté JS, mais il semble qu’il retourne une promesse. Quelqu’un peut-il me dire comment je peux faire cela ?
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);
});
});
exemple :
var smallarrq = ['71782', '72307'];
this.set(
"topicList",
topicList.topics.filter((t) => smallarrq.includes(t.id)).slice(0, settings.max_list_length)
);
Je veux que ce tableau final_arr ressemble au tableau smallarrq ci-dessus, mais il retourne une promesse.
Aidez-moi s’il vous plaît, je travaille dessus depuis plusieurs jours.
Merci,