[英]data sorting in nodejs isn't working properly
我正在研究一個顯示來自后端的數據的滑塊。 使用“狀態:1,dueDate:1”功能。 它以相反的順序顯示,但我需要它根據首先顯示“待定(btn-success)”然后“已完成(btn-warning)”的狀態顯示這些幻燈片
注意:滑塊也有(待定的“btn-danger”),必須先顯示),它沒有狀態
首先顯示(btn-danger),然后顯示狀態=掛起(btn-success),然后狀態=完成(btn-warning)。
滑塊截圖: https : //ibb.co/jJqLbQQ
控制器代碼:
var renderListOfMeetings = async function(req, res) {
try {
checkRoles(req);
let meetings = await Meeting.find({}).sort({ status: 1, date: 1 });
let tasks = await Task.find({}).sort({ status: 1, dueDate: 1 });
res.render("meeting", {
title: "Meetings",
pdfUrl: config.pdfUrl,
isAdmin: req.roleAdmin,
sectionBCommittee: [],
meetings: meetings,
tasks: tasks
});
} catch (ex) {
console.log(ex.message);
}
};
前端代碼:
function setTasksCarausel() {
html = '<div class="carousel-inner no-padding">';
let tasksCopy = utils.setSliders(Array.from(tasks));
tasksCopy.map((tasks, index) => {
html += `<div class="item ${index === 0 ? 'active' : ''}">`;
tasks.map(t => {
html += `
<div class="col-md-3 col-sm-6 col-xs-12 pending-task-btn" onclick="handleClickTaskItem('${t._id}')">
<span href="" class="btn ${t.status === 'completed' ? 'btn-warning' : (new Date(t.dueDate) < new Date() ? 'btn-danger' : 'btn-success')} btn-lg dashboard-icon" style="width: 200px; height: 150px;">
<p style="padding-top: 10px; font-size: 20px; font-weight: bold;">${t.type}</p>
<p style="padding-top: 12px; font-size: 20px; font-weight: bold;">${utils.convertDate(t.dueDate)}</p>
<p style="padding-top: 10px; font-size: 20px; font-weight: bold;">( ${t.status } )</p>
</span>
</div>
`;
});
html += `</div>`;
})
function setMeetingCarausel() {
let meetingsCopy = utils.setSliders(Array.from(meetings));
let html = '<div class="carousel-inner no-padding">';
meetingsCopy.map((meeting, index) => {
html += `<div class="item ${index === 0 ? 'active' : ''}">`;
meeting.map(m => {
let className = m.status === 'completed' ? 'btn btn-warning btn-lg dashboard-icon' : 'btn btn-success btn-lg dashboard-icon'
html += `
<div class="col-md-3 col-sm-6 col-xs-12" onclick="handleClickMeetingItem('${m._id}')">
<span href="" class="${className}" style="width: 200px; height: 150px;">
<p style="padding-top: 10px; font-size: 19px; font-weight: bold;">${m.subject}</p>
<p style="padding-top: 12px; font-size: 19px; font-weight: bold;">${utils.convertDate(m.date)}</p>
<p style="padding-top: 10px; font-size: 19px; font-weight: bold;">( ${m.status} )</p>
</span>
</div>
`;
});
html += `</div>`;
})
完整截圖: https : //ibb.co/SKVh4Jp
let meetings = await Meeting.find({}).sort({ status: 1, date: -1 });
let tasks = await Task.find({}).sort({ status: 1, dueDate: -1 });
請嘗試以上
使用-1獲取最新文檔。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.