在Handlebarsjs帮助器中使用Node函数的值

时间:2018-11-23 14:47:56

标签: node.js mongoose handlebars.js

我的应用程序将一些信息从节点/猫鼬传递到车把模板。其中一部分是几个函数,我在模板中使用了它们的结果,它可以正常显示。

router.get("/output/:id", (req, res) => {
   Project.findOne({
      _id: req.params.id
   })
   .populate("user")
   .then(project => {
      if (req.user) {
         if (req.user.id == project.user._id) {
            res.render("projects/output", {
               project: project,
               inputTotal: function() {
                  // do some stuff
                  return inputSum;
               },
               outputTotal: function() {
                  // do some stuff
                  return outputCalcs.value; 
               }
            });
         } else {
            res.redirect("/");
         }
      } else {
         res.redirect("/");
      }
   });
});

然后我有一个车把帮助器函数,我想将两个返回值作为参数传递

calc: function(firstReturn, secondReturn){
   let value = firstReturn + secondReturn; 
   return value; 
}

然后在车把

{{calc inputTotal outputTotal}}

执行此操作时,它返回NaN,因此我在控制台上记录了函数参数的typeof,它们都是函数,而不是数字,我认为这很有意义。如何以数字形式访问它们,以便可以使用助手中的值?

0 个答案:

没有答案