Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将变量从node.js传递到html_Javascript_Html_Node.js_Handlebars.js - Fatal编程技术网

Javascript 如何将变量从node.js传递到html

Javascript 如何将变量从node.js传递到html,javascript,html,node.js,handlebars.js,Javascript,Html,Node.js,Handlebars.js,我是node.js开发者的新手 我目前正在编写一个程序,程序结构如下: view | |--- booking.handlebars (HTML program) | routes | |--- booking.js (node.js JavaScript program) | 当用户访问“dashboard”页面时,“booking.js”将连接到mongodb,从数据库“booking”中检索所有“bookings”记录。然后,我的目标是将获取的“bookings”对象传递给“

我是node.js开发者的新手

我目前正在编写一个程序,程序结构如下:

view
 |
 |--- booking.handlebars (HTML program)
 |
routes
 |
 |--- booking.js (node.js JavaScript program)
 |
当用户访问“dashboard”页面时,“booking.js”将连接到mongodb,从数据库“booking”中检索所有“bookings”记录。然后,我的目标是将获取的“bookings”对象传递给“booking.handlebar”HTML文件

然而,我无法实现这个目标

我考虑过很多选择,包括使用全局变量从stackoverflow中搜索线程;生成JSON文件,然后将JSON文件读回,等等。但这似乎不起作用

我想寻求您的帮助,如何将所有对象值从JavaScript程序传递到HTML

下面是我的代码:

booking.handlebar(HTML程序)


如果您想将数据从node.js发送到html,您应该使用ejs模块。要从数据库中获取结果,您应该使用mongoose模块。我理解您;但我在电话上写,我不会写代码

如果您可以获得使用mongoose或不使用mongoose的预订结果,您可以使用express发送到html,如下所示

用于将ejs文件与express.js一起使用

app.engine('.ejs',ejs.\uu express);app.set('views','u dirname+'/views')

要发送到html,请执行以下操作:

res.render('./dashboard.ejs',{booking:booking})

在dashboard.ejs中:

<span><%-booking.username%></span>//booking is what you sent with res.render  
//预订是您使用res.render发送的内容
注1:创建viesw文件夹并在视图文件夹中创建dashboard.ejs。 注2安装ejs和mongoose模块。

var express = require('express');
var router = express.Router();
var bookingRecord = null;


router.get('/dashboard', function(req, res){
    res.render('dashboard');
});


router.post('/dashboard',
  function(req, res) {
    var MongoClient = require('mongodb').MongoClient;
    var url = "mongodb://localhost:27017/";

    MongoClient.connect(url, function(err, db) {
      if (err) throw err;
      var dbo = db.db("booking");
      dbo.collection("bookings").find().toArray(function(err, booking) {
        if (err) throw err;
        console.log(booking);
        bookingRecord = booking;
        db.close();
      });
    });

    res.redirect('/users/dashboard');
  });


module.exports = router;
<span><%-booking.username%></span>//booking is what you sent with res.render