使用Jade呈现JSON响应

时间:2016-11-25 14:39:34

标签: json node.js rest express pug

我已经回到基础,尝试创建一个调用REST API的简单示例,接收一些JSON并使用Jade以HTML格式呈现JSON数据。

我已尝试过很多方法,但无法使用。

我需要将哪些代码添加到我的主脚本文件(下面 - lxrclient.js)才能实现此目的。我知道我需要添加快速模块,并呈现视图,但无论谁可能接近我已经尝试过我无法让它工作。我还添加了我正在使用的玉文件。非常感谢任何人都能提供的任何帮助。

//this is my main script file lxrclient3.js

var http = require('http');
var express = require('express');
var app = express();

app.set('view engine', 'jade');

var options = {
    host: '41.193.214.130',
    port: 2510,
    path: '/eiftidemo/clt_list',
    method: 'GET'
};


http.request(options, function(res) {
    var body = '';
    //node of these statemnst excecute

    res.on('data', function(chunk) {
        body += chunk;
    });

    res.on('end', function() {
        var clientsData = JSON.parse(body);
        debugger;

    });
}).end();

app.get("/clientlist", function(req, res){
   res.render('listlxr', {clientd: clientsData});
});

var server = app.listen(3000, function() {
    console.log('Our App is running at http://localhost:3000');
});

这是我的玉视图

html
  head
    title List of Clients
    link(rel="stylesheet", href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css")  
  body
    div.row
      div.col-md-3
      div.col-md-6
        div.panel.panel-primary
          div.panel-heading.text-center
            h1 Client List for Hyposure
          div.panel-body
            table.table
              each clients in clientsData
                tr
                  td.media
                    span.bg-info= clients.clientName
                  td.media
                    span.bg-info= clients.clientSurname  

对任何可以提供帮助的人

1 个答案:

答案 0 :(得分:0)

首先,当你说Jade我希望你的意思是帕格,如果没有,你应该更新到最新版本的帕格。

现在,要将数据发送到您的模板以便引擎呈现您发送JSON对象,就像这样;

res.get("/", function(req, res)
{
   res.render("page.html", {greet : "Hello"});
}

这是呈现页面并沿侧面发送一些数据的标准方法。

现在在您的Pug(Jade(相同的东西))模板中,您可以像这样访问已发送的变量;

html
 head
  title List of Clients
    body
     h1 #{greet} <!-- This will print "Hello" -->

这应该为您提供有关如何将数据呈现到网站的基本知识,您还可以发送嵌套对象,并且您只需按照本示例中的方式工作,但您指向正确的密钥。例如,如果您要发送以下对象:

{
  greet: {
    message : "Hello",
    who : "Adrian"
  }
}

然后您可以使用以下方式打印该值:

#{greet.message} #{greet.who}