Javascript 使用NodeJS在UI级别对数据进行分页
节点api构建Javascript 使用NodeJS在UI级别对数据进行分页,javascript,html,node.js,mongodb,pagination,Javascript,Html,Node.js,Mongodb,Pagination,节点api构建 const BOOKDATA = "book-database"; module.exports = function(app, db) { /*-----------------------------------------FETCHING DATA FROM MONGO-----------------------------------------------*/ //Get data in frontend app.get("/api/bookdata"
const BOOKDATA = "book-database";
module.exports = function(app, db) {
/*-----------------------------------------FETCHING DATA FROM MONGO-----------------------------------------------*/
//Get data in frontend
app.get("/api/bookdata", (req, res) => {
const mydara = db.collection(BOOKDATA);
const page = parseInt(req.query.page);
const limit = parseInt(req.query.limit);
const startIndex = (page - 1) * limit;
const endIndex = page * limit;
const results = {};
if (endIndex < mydara.length) {
results.next = {
page: page + 1,
limit: limit
};
}
if (startIndex > 0) {
results.previous = {
page: page - 1,
limit: limit
};
}
mydara.find({}).toArray(function(err, result) {
var obj = JSON.parse(JSON.stringify(result));
if (err) {
throw err;
} else {
results.results = obj.slice(startIndex, endIndex);
res.send(results);
console.log(results);
}
});
});
};
我用来显示卡片的HTML正文是:-
<body>
<div class="card mt-5 mr-5 ml-5" id="bookInfo"></div>
<script src="http://localhost:8080/scripts/script.js"></script>
</body>
有人能帮我弄清楚吗。如果需要任何其他详细信息,请写在注释中。好的,因此一旦从服务器获取数据,您需要在浏览器上呈现数据。我可以在您的代码中看到多个错误和改进,因此这将是如何工作的指南 index.html
script.js
const bookDataDisplay=(数据)=>{
//分析数据是一系列的书籍
常量bookElements=data.reduce((str,book)=>{
str+=`
${book.title}
`;
}, '');
document.getElementById('bookInfo')。innerHTML=bookElements;
}
fetchBooks()。然后((数据)=>bookDataDisplay(数据));
如果您能给我们看完整的代码就更好了。也许用stackoverflow或感谢@ajorquera创建一个截取的代码,我会在一分钟内上传代码。@ajorquera我已经上传了完整的代码片段,您能告诉我还有什么需要提供的吗?您当前的输出/错误是什么?我在chrome控制台中以正确的格式获取数据,但我被困于如何管理UI中的分页数字栏。
<body>
<div class="card mt-5 mr-5 ml-5" id="bookInfo"></div>
<script src="http://localhost:8080/scripts/script.js"></script>
</body>
_id:5e46f1818d6512212ca0b65c
book_id:26
goodreads_book_id:968
best_book_id:968
work_id:2982101
books_count:350
isbn:307277674
isbn13:9780307277670
authors:"Dan Brown"
original_publication_year:2003
original_title:"The Da Vinci Code"
title:"The Da Vinci Code (Robert Langdon, #2)"
image_url:"https://images.gr-assets.com/books/1303252999m/968.jpg"
small_image_url:"https://images.gr-assets.com/books/1303252999s/968.jpg"