我已经接近使用express和ejs的节点应用程序,但是当我尝试将数据从控制器传递到我的视图时,如下所示
var myData = {
theData: data
};
res.render(path.join(__dirname + '/../views/index'), myData);
我收到一个很好的错误
ReferenceError:.. myData is not defined eval (from ejs lib)
当尝试像这样访问视图中的 myData 时
var data = <%-myData%>;
或者基本上以任何其他方式,我尝试过对数据进行字符串化,将其包装在另一个对象和类似的东西中,但它仍然不会显示,我感觉我在这里缺少一些非常基本的东西,有人有吗关于如何解决这个问题的想法?
您传递给的第二个参数render()
是一个对象含有您想要在模板中使用的视图变量。所以你看到的错误是有道理的。如果你想使用myData
这样你就必须在你的控制器/应用程序中执行类似的操作:
res.render(..., { myData: JSON.stringify(myData) });
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)