首页 > 解决方案 > 在 html javascript 中使用数据库中的数据

问题描述

我开发了一个 Android 应用程序,它通过 http 请求在 mongodb 中保存一些数据。一切正常,没关系。现在是项目的第二部分,在 html javascript 中使用这些数据,我不知道该怎么做。

这是来自我server.js的,它是我从数据库中获取数据并将其发送到localhost:3000的部分res.send(data)

 app.get('/',(req,res)=> {

      MongoClient.connect(url, { useNewUrlParser: true }, function(err,           
 db) {
        if (err) throw err;
        var dbo = db.db("mydb");
        dbo.collection("date_locatie").find({"imei" : imei_number},              
 function(err, result) {
          if (err) throw err;
          console.log(data.imei);
          res.send(data);
        });
    });
  });

现在我已经创建了一个名为的 html 页面mapa.html,在我将数据从 mongo 传递到节点之后,(res.send(data))我也尝试发送 html 页面res.sendFile(path.join(__dirname+'/mapa.html')),但它似乎express/node.js不像这样工作。如果我在收到错误res.sendFile后放行res.send

错误:发送后无法设置标头。

我知道我不能res.sendFile在 I 之后res.send,但我不知道如何在该 html 页面中使用来自 mongodb 的数据。

标签: javascripthtmlnode.jsdatabasemongodb

解决方案


您不能将变量传递给 html 页面。您必须使用模板引擎。我推荐使用 EJS 模板。您可以通过运行安装它npm install ejs,然后在您的代码中通过编写指定您正在使用的模板引擎app.set('view engine', 'ejs');。您创建的页面必须具有扩展名.ejs。现在您可以使用 加载页面render,如下所示:

res.render('page name',{
      variables: someVariable
    });

并在您的模板内部打印传递的变量,<%= variables %> 希望我的回答有所帮助。如果您有任何问题随时问。


推荐阅读