如何在 express js 中使用 MVC viewBag 概念?
How to use MVC viewBag concept in express js?
我正在使用 express js 4.1 和 handlebars 模板 4.0。呈现页面时,我将对象集合从 express route.get('/') 发送到 handlebar(.hbs) 视图文件。发送对象是否有可能像 viewbag(类似于 MVC)并且应该使用 hbs 文件中的@viewbag 访问这些对象?下面的代码用于渲染 hbs 文件以及 2 个对象的集合
var gridData = [
{ Name: 'xxxx', City: 'dddd' },
{ Name: 'yyyy', City: 'rrrr' },
{ Name: 'zzzz', City: 'ssss' }
]
resultSet["gridData"] = gridData;
resultSet["newdata"] = [1,2,3];
res.render('user-list', {viewBag: resultSet});
这里我需要使用viewBag作为hbs中的@viewBag.gridData或者@viewBag.newdata来绑定这些数组值。另外,请建议如何在 hbs 文件中使用 @HTML 助手和 @section ControlsSection{},因为 express js 遵循 MVC 结构。
我用
代替了 res.render('user-list', {viewBag: gridData});
res.locals.gridData = JSON.stringify(gridData); // To make it global and accessible in hbs view file
res.locals.newdata = newdata;
res.render('user-list');
渲染'user-list'页面时,dataSource: {{{gridData}}}
会为网格绑定相应的数据源,这个datasource
属于json类型。终于成功了!!!
我正在使用 express js 4.1 和 handlebars 模板 4.0。呈现页面时,我将对象集合从 express route.get('/') 发送到 handlebar(.hbs) 视图文件。发送对象是否有可能像 viewbag(类似于 MVC)并且应该使用 hbs 文件中的@viewbag 访问这些对象?下面的代码用于渲染 hbs 文件以及 2 个对象的集合
var gridData = [
{ Name: 'xxxx', City: 'dddd' },
{ Name: 'yyyy', City: 'rrrr' },
{ Name: 'zzzz', City: 'ssss' }
]
resultSet["gridData"] = gridData;
resultSet["newdata"] = [1,2,3];
res.render('user-list', {viewBag: resultSet});
这里我需要使用viewBag作为hbs中的@viewBag.gridData或者@viewBag.newdata来绑定这些数组值。另外,请建议如何在 hbs 文件中使用 @HTML 助手和 @section ControlsSection{},因为 express js 遵循 MVC 结构。
我用
代替了res.render('user-list', {viewBag: gridData});
res.locals.gridData = JSON.stringify(gridData); // To make it global and accessible in hbs view file
res.locals.newdata = newdata;
res.render('user-list');
渲染'user-list'页面时,dataSource: {{{gridData}}}
会为网格绑定相应的数据源,这个datasource
属于json类型。终于成功了!!!