Я использую экспресс, чтобы сделать очень простую страницу. Моя index.js
выглядит следующим образом:проблема с express.index отправка объекта json
exports.index = function(req, res){
res.render(
'index',
{
title: 'Expressssss',
Tin: varTin,
Tout : varTout,
Hin : varHin,
Tout_array : { 'date': 'Thu Mar 07 2013 22:00:04 GMT+0100 (CET)', 'value': '10062' }
}
);
};
О файле index.ejs
я могу использовать значение, используя, например <%= Tin %>
... Это работает очень хорошо ....
Проблема заключается в том, что data = <%= Tout_array %>;
не кажется хорошо работать. Используя консоль chromes, в этой строке появляется ошибка. HTML код после синтаксического анализа выглядит следующим образом:
data = [object Object];
и ошибка в этой точке
Uncaught SyntaxError: Unexpected identifier
что я делаю не так? почему синтаксический анализ любого другого variale работает довольно хорошо, но не эта вложенная структура json? Я использую это, потому что хочу отправить большой массив.
Thans
бы мы могли см. файл index.ejs? – Hamms
Без каких-либо других указаний JavaScript 'Object' ['toString()'] (http://es5.github.com/#x15.2.4.2) до того, что вы получили - '[object Object]'. Если вам нужно что-нибудь более полезное, вы должны быть явным в каком формате. Для JSON это 'JSON.stringify()', как уже было предложено другими. –
@ JonathanLonowski благодарит за идею. Сейчас я сталкиваюсь с двумя проблемами. Во-первых, JSON.stringify возвращает строку с '' '-qhotes, которые не работают ... во-вторых, мне нужно добавить дополнительную цитату в массив,' '[{}, {}] 'instad of' [{}, {}] '.... Поэтому мне нужно преобразовать из' [{"date":}, {}] 'в' '[{\' date \ '}, {}]' '. Странно, есть ли лучший способ? – otmezger