2017-10-18 118 views
-1

我使用表单生成器使用句柄作为模板引擎来创建Web应用程序。如果我显示来自响应的对象数组,它会显示。但是,当我在视图中的每个循环显示什么都没有。如何显示使用对象数组的对象的表格

/******************************** 
model file ../controllers/books.js 
*********************************/ 
var request = require('request'); 

exports.list = function(req, res, next){ 

    request.get({ url: "https://jsonplaceholder.typicode.com/posts" },  function(error, response, body) { 
       if (!error && response.statusCode == 200) { 
        res.render('index', { title: 'speed Tracker', list: body });  
        } 
       }); 


}; 
    /*********************** 
route file 
************************/ 
var express = require('express'); 
var router = express.Router(); 

var books = require('../controllers/books'); 
/* GET home page. */ 
router.get('/', books.list); 

<!-- language: lang-html --> 

         <table id="datatable" class="table table-striped table-bordered"> 
          <thead> 
           <tr> 
            <th>ID</th> 
            <th>Album Id</th> 
            <th>title</th> 
            <th>url</th> 
            <th>image</th> 
           </tr> 
          </thead> 
          {{list}} 
          <tbody> 
           {{#each list}} 
           <tr> 
            <td>{{id}}</td> 
            <td>{{userId}}</td> 
            <td>{{title}}</td> 
            <td>{{body}}</td> 
            <td></td> 
           </tr> 
           {{/each}} 
          </tbody> 
         </table> 
json of list 

[ { “用户id”:1, “ID”:1, “标题”: “必须遵守AUT facere repellat公积金occaecati excepturi OPTIO reprehenderit”, “身体” : “quia等suscipit \ nsuscipit recusandae consequuntur expedita等暨​​\ nreprehenderit molestiae UT UT quas totam \ nnostrum rerum EST AUTEM必须遵守REM eveniet architecto” },{ “用户id”:1, “ID”:2, “title”:“qui est esse”, “body”:“est rerum tempore vitae \ nsequi sint nihil reprehenderit dolor beatae ea dolores neque \ nfugiat blanditiis voluptate porro vel nihil molestiae ut reiciendis \ nqui aperiam non debitis possimus qui neque nisi nulla“ }, {.....

我在上面添加的代码数据不会在每个循环中显示。

+0

通过对象的阵列的每个环是不工作 – Dhananjayan

+0

我尝试都与此没有这个每个循环内,但两者失败 – Dhananjayan

+0

我用{{#each列表}}在该代码,** **表是一个对象数组。我需要构建表格。 – Dhananjayan

回答

0

我必须在book.js文件中将字符串转换为对象。我添加了下面的代码。

var request = require('request'); 

exports.list = function(req, res, next){ 

    request.get({ url: "https://jsonplaceholder.typicode.com/posts" },  function(error, response, body) { 
       if (!error && response.statusCode == 200) { 
        res.render('index', { title: 'speed Tracker', list: JSON.parse(body) });  // add JSON.parse to convert string to object :) 
        } 
       }); 


};