여러분, 안녕하세요.
최근 30일 동안 가장 활발한 답변이 있는 상위 3개 주제를 가져오는 작업을 하고 있습니다. 이 주제들만 표시하려고 하며, show case category 플러그인을 커스터마이징하고 있습니다. JS 쪽에서 아래 코드를 실행했는데, Promise로 반환되는 것 같습니다. 이 문제를 어떻게 해결할 수 있는지 알려주실 수 있을까요?
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);
});
});
예시:
var smallarrq = ['71782', '72307'];
this.set(
"topicList",
topicList.topics.filter((t) => smallarrq.includes(t.id)).slice(0, settings.max_list_length)
);
위 smallarrq 배열과 같은 형태를 가진 final_arr 배열을 얻고 싶은데, 현재는 Promise로 반환되고 있습니다.
며칠째 고민하고 있으니 도와주세요.
감사합니다.