2017-02-23 121 views
0

我有一个场景,我尝试从嵌套for循环中访问自定义助手中的单独元素。当我在我的for循环外使用root时,我没有任何问题,但似乎无法在我的自定义帮助程序中使用@root。我想,也许../会的工作,但现在看来,只可以向上移动到父元素,而不是一个是独立的在自定义助手中使用@root的把手

这里是我的两个对象:

category //Object being looped through 
categoryQuery //Query object being compared to looped values 

这里是我的视图(通过ID的循环,然后应用选择成附接至所述categoryQuery ID:

{{#category}} 
    <option value="{{this.categoryId}}"{{selected this.categoryId @root.categoryQuery}}>{{this.categoryName}}</option> 
{{/category}} 

预选值,如果VA梅毒比赛:

/Preselect option value that is associated with edited record 
    hbs.registerHelper('selected', function(option, value){ 
     if (option === value) { 
      return 'selected'; 
     } else { 
      return ''; 
     } 
    }); 

更新时间:

加入console.log('Option : ' + option + ' Value : ' + value);到我注册帮手else语句时,我收到以下,这表明它不是一个问题,@root.category不拉值,但它不正确。

例如:

Option : 1 Value : 2 
Option : 2 Value : 2 
Option : 1 Value : undefined 
+1

“categoryId”和“categoryQuery”的_types_类型是什么? – 76484

回答

0

我确定该问题的根本原因是比较操作符的严格性。当更改为==时,我能够正确识别匹配的ID

相关问题