2015-08-18 92 views
0

我知道即时并不好使用res.render {}对象,并且那是我的原因,在这里发帖,但:在客户端

con.connect(); 

con.query('SELECT name, lname, rank FROM players LIMIT 1', function(err,rows, fields){ 
    if(err) throw err; 
    result = rows; 
    resultstringify = JSON.stringify(rows); 
    console.log(result); 
    console.log(resultstringify); 
}); 

con.end(); 

节点控制台给我:

[{名:'FAKE',lname:'FAKE',等级:1}]
[{“name”:“FAKE”,“lname”:“FAKE”,“rank”:1}]

然后, go for:

router.get('/', function(req, res, next) { 
res.render('players', 
{ title: "New page", result: result, resultstringify : resultstringify }); 
}); 

然后在客户端我做

console.log("{{result}}"); 

和收到的翻译:

console.log("{{resultstringify}}"); 

和收到[{"name":"FAKE","lname":"FAKE","rank":1}]

console.log(JSON.parse("{{resultstringify}}")); 

和收到 未捕获的SyntaxError:意外令牌&(这是第一个字母[{" ...)

我希望我已经搞砸了所有的解析/ stringify的东西,它很容易修复,但我想发送和正确的方式接收它。目前,我可以收到的最好的事情是

[{"name":"FAKE","lname":"FAKE","rank":1}]

,但它看起来不正确

我做点击这里的所有链接,但仍然不得不张贴此问题。

更新:

更换& QUOT用一个单一的 “帮助:

arr = "{{resultstringify}}"; // call it 
arr = arr.replace(/"/g, '"'); //replace &quot with a single " 
arr = JSON.parse(arr); //parse it 
console.log(arr[0].name); //gives what you want 

,但我仍然无法figuire了哪里& QUOT(而不是”)是从哪里来的。

回答

0

曾经在哪里,我认为你应该尝试像

<div>{{result}}</div> 

一次显示HTML网页上的内容您正在试图显示使用的console.log内容。在HTML显示正确的数据给我

+0

thanx您的回复是的,{{resultstringify}}看起来正常的内格,而{{结果}}仍然是[对象对象] 但是在JS方面,我如何获取名称,lname,等级的值?json.parse(“{{resultstringify}}”); //返回Uncaught SyntaxError:意外的标记& –

0

更换& QUOT用一个单一的“帮助:

arr = "{{resultstringify}}"; // call it 
arr = arr.replace(/&quot;/g, '"'); //replace &quot with a single " 
arr = JSON.parse(arr); //parse it 
console.log(arr[0].name); //gives what you want