2015-08-18 127 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