2015-08-18 3 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}]
[{ "имя": "FAKE", "LNAME": "FAKE", "Оценка": 1}]

Тогда я go для:

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

затем на стороне клиента я сделать

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

и получать [объект Object]

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

и получать [{"name":"FAKE","lname":"FAKE","rank":1}]

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

и получать Uncaught SyntaxError: Неожиданный маркер & (который первая буква [{" ...)

Надеюсь, что я перепутал все элементы синтаксического разбора и строчки, и его легко исправить, но я хочу отправить и получить его в правильном направлении. В настоящее время самое лучшее, что я могу получить это

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

, но это не выглядит правильно

я сделал нажмите все ссылки здесь, но все-таки должен был отправить на этот вопрос.

Update:

Заменить & 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

Где когда-нибудь я думаю, вы должны попробовать, чтобы отобразить содержимое на HTML-страницу один раз, как

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

вы в настоящее время пытается отобразить содержимое с помощью console.log. HTML, отображает правильные данные мне

+0

Thanx за ответ Да, {{resultstringify}} выглядит нормальный внутри DIV, в то время как {{результат}} все еще [object Object]. Но на стороне JS, как я могу получить acess для значения имени, lname, rank? 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