【发布时间】:2020-09-04 19:02:30
【问题描述】:
我正在使用 Node Web 应用程序,我在其中将数据从服务器传递到客户端。这是有问题的路线:
router.get("/:id", function(req, res){
Player.findById(req.params.id).populate("comments").exec(function(err, foundPlayer){
if(err){
console.log(err);
} else {
let years = foundPlayer.season.map(({
grade}) => grade);
res.render("players/show", {player: foundPlayer, yearTotals: years });
}
});
});
在创建一个变量来存储years 的映射之后,我正在传递有关来自 Mongo 的 player 的特定信息。这是我正在使用的 EJS 模板中的脚本标记:
let xAxis = [<%= yearTotals %>];
在 Chrome 控制台中查看代码显示:
let xAxis = [Freshman, Sophomore, Junior, Senior]
所以值成功通过了;但是,我遇到了这个错误:
Uncaught ReferenceError: Freshman is not defined
我在这里缺少什么?提前感谢您的帮助!
【问题讨论】:
-
那些应该是字符串吗?因为如果是这样,他们周围没有引号。
-
@Taplar - 是的,将值转换为字符串的合适方法是什么?
-
可能需要查看您在
let xAxis = [<%= yearTotals %>];周围的选项,看看有什么可以确保字符串周围有引号 -
let xAxis = <% JSON.stringify(yearTotals) %>;
标签: javascript html node.js ejs