Javascript 如何在带有nodeJs expressJs的把手中使用json

Javascript 如何在带有nodeJs expressJs的把手中使用json,javascript,json,node.js,express,handlebars.js,Javascript,Json,Node.js,Express,Handlebars.js,我在dataList变量中有一个JSON数据,我想在CustomHandleBars helper中添加它作为参数 var dataList = [ { "id": 1, "title": "Arrange meeting", "date": "Today 10:35 | By Admin", "completed": true }, ]; 车把自定义辅助工具 var Handlebar = require('handlebars'); Handleba

我在dataList变量中有一个JSON数据,我想在CustomHandleBars helper中添加它作为参数

var dataList = [
  {
    "id": 1,
    "title": "Arrange meeting",
    "date": "Today 10:35 | By Admin",
    "completed": true
  },
];
车把自定义辅助工具

var Handlebar = require('handlebars');
Handlebar.registerHelper('List', function(data, options){
  //console.log(data) //returns undefined 
  return options.fn(JSON.parse(data)); // gives error
});
自定义辅助渲染:

{{#List dataList}} 
  {{> widgets/toDoList}}
{{/List}}
它会产生误差

SyntaxError:JSON中位于位置0的意外标记u

然而,它正在处理静态数据

{{#List '[
  {
    "id": 1,
    "title": "Arrange meeting",
    "date": "Today 10:35 | By Admin",
    "completed": true
  },
]' }} 
  {{> widgets/toDoList}}
{{/List}}

这是因为您的
数据
返回
未定义

有关更多信息,请参见这里[]

JSON.parse接受字符串,但您向他传递一个数组

我非常确定,这不是自定义助手的问题,而是您向其传递数据的方式


如果您使用的是express,它就像
res.render('view-name',data)

JSON数据列表已经定义,但仍然没有得到实际问题。
Handlebar.registerHelper('List',function(data,options){//console.log(data)//返回未定义的返回选项。fn(JSON.parse(data));}在这段代码中,您已经解析成json,但是由于未定义的数据,您得到了这个错误。好的!!那么你能解释一下如何定义dataList吗??在{{{List dataList}{{>widgets/toDoList}{{{/List}}中,你玩过把手吗????这里是那个(视频)的教程[@JigneshSanghani,为什么你把这个问题作为刚刚重新定义的答案?OP告诉我们数据是
未定义的
,因此出现了错误。请帮助确定为什么会出现
未定义的
。!!
当我在{{这里列出完整的json代码}中添加完整的json代码时使用单引号就可以完美地工作了
您能解释一下吗?或者最好在问题中添加用例,如果working@RaghavGargQus.updated。感谢您的更新,我非常确定,这不是自定义帮助程序的问题,而是您将数据传递给它的方式。请同时显示您调用此视图的位置。!!如果是使用express,它就像
res.render('view-name',data)
。谢谢!!@RaghavGarg它可以工作