使用Meteor:在模板helper中使用helper函数的奇怪行为
Using Meteor: strange behavior using helper functions in template helpers
我在使用Meteor时遇到了一些奇怪的行为。
我在一个模板助手定义在client/。函数"percentCompleted"是client/lib/helper.js中定义的辅助函数。当我在返回行中调用"percentCompleted"时,percentCompleted会正常完成。但是,每当我在返回行之外调用percentCompleted时,控制台就会记录一个错误,表示"percentCompleted"函数未定义。为什么一个辅助函数被定义或未定义取决于它在模板助手调用??
Template.chapter.percentComplete = function(){
if(_.isEmpty(this))
return "";
return percentCompleted(this)
}
这将抛出一个未定义"percentCompleted"的错误。
Template.chapter.percentComplete = function(){
if(_.isEmpty(this))
return "";
var percentCompleted = percentCompleted(this)
return percentCompleted;
}
问题是您有一个名为percentCompleted
的局部变量,该变量遮蔽了函数percentCompleted
。将变量重命名为其他东西,它应该可以工作。
Template.chapter.percentComplete = function(){
var percentCompleted;
if(_.isEmpty(this))
return "";
// Here we attempt to call the function in the percentCompleted
// var, but that is undefined.
percentCompleted = percentCompleted(this)
return percentCompleted;
}
相关文章:
- 创建一个类似链接的按钮,并通过Javascript函数打开一个新的弹出窗口
- 将函数的上下文应用于javascript变量
- 控制器的Helper函数不返回任何内容
- 如何在redux模块中创建一个helper类型的函数,从state返回一组经过过滤的只读数据
- 如何从jQuery AJAX调用WebMatrix Helper函数
- 如何从Html Helper类调用Java脚本函数'的脚本函数
- 使用Helper函数查询对象数组
- Meteor:collectionHandle.ready()为true后,如何触发helper函数的reRun
- DOM就绪时的Helper函数
- 如何访问Javascript中循环函数的helper中的迭代器
- Expressjs-有没有一种方法可以让helper函数与req,res对象一起使用
- Handlerbars.js在#if语句中使用helper函数
- TypeError: inverse不是函数(在handlebars helper中)
- 我是否需要在以下javascript代码中导出helper函数
- Helper函数——希望dry
- 使用Meteor:在模板helper中使用helper函数的奇怪行为
- 从Rails helper调用JS函数
- jsviews中的Helper函数
- 函数式编程-JavaScript:Anonymous vs Helper函数
- 在NodeJS中构造helper函数的最佳方式