在 jade javascript 部分访问 express res.render 的输入数据

Access the input data of express res.render in jade javascript section

我写了一个 node.js 应用程序来渲染一个 jade 页面。

res.render('index', { title: 'Express', inputData: JSON.parse(JSON.stringify(jsonAll))});

现在我想访问 layout.jade 中的 inputData,它由 index.jade

扩展
script(type='text/javascript').
   function setTextFilter(elem) {
      $('#filter').text(elem.innerHTML);
      var searchElement = $('#searchElement').text();
      var res = [];
      console.log(elem.innerHTML);
      var inputp = !{inputData};   //<--- ERROR here (Unexpected Identifier)
      console.log(JSON.stringify(inputp));
      if(elem.innerHTML == "foo"){
        for(var i = 0; i < inputp.length;i++){
          if(inputp.year == searchElement){
            res.push(allData[i])
          }
        }
        console.log(res);
      }
    }

这不起作用,我收到错误:意外的标识符。我发现,这是因为 !{inputData} 但它是正确的使用方式,不是吗?

您可以更改如下:

var inputp = !{inputData};

var inputp = #{inputData};