Uncaught SyntaxError: неожиданный идентификатор с использованием JSON.stringify () - PullRequest
0 голосов
/ 17 июня 2019

Я пытаюсь использовать ag-Grid для отображения некоторых данных в таблице с помощью MSSQL. У меня проблема, когда я console.log(JSON.stringify(field1)) на стороне сервера показывает мне:

recordset:[ { field1 : 'Alexandra.Bernhard' }, { field1 : 'Andrew.Collins' }],.

Однако, когда я пытаюсь сделать то же самое на стороне клиента, я получаю сообщение об ошибке

Uncaught SyntaxError: Unexpected identifier.

router.js

router.get('/', async (req, res) => {
    try {
      var field1 = await conn.query("SELECT DISTINCT TOP 100 Names FROM Table1");
      JSON.stringify(field1) 
      console.log(field1) //recordset:[ { Resource_Email_ID: 'Alexandra.Bernhard' }, { Resource_Email_ID: 'Andrew.Collins' }],
      res.render('index', {field1: field1});
    } catch (err) {
      res.status(500).send(err.message)
    }
  });

index.ejs

var obj = "<%- JSON.stringify(field1) %>" //[object, Object]

var columnDefs = [{headerName: "Names", field: "name"}];
    // specify the data
    var rowData = [{name : obj}];

    // let the grid know which columns and what data to use
    var gridOptions = {
      columnDefs: columnDefs,
      rowData: rowData
    };

Как получить фактические значения для отображения в таблице?

Ответы [ 2 ]

0 голосов
/ 18 июня 2019

Это было простое исправление, мне пришлось передать obj в переменную rowData и удалить двойные кавычки.

var obj = <%- JSON.stringify(field1) %> 
var columnDefs = [{headerName: "Distinct_Names", field: "obj"}];
    // specify the data
    var rowData = obj;
0 голосов
/ 17 июня 2019

Вы не должны заключать в кавычки.JSON.stringify() создает литерал JavaScript, его нужно заменить, чтобы присвоить объект переменной.

var obj = <%- JSON.stringify(field1) %>
...