首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么每个标签都不接受数组?

为什么每个标签都不接受数组?
EN

Stack Overflow用户
提问于 2015-09-28 18:11:13
回答 1查看 139关注 0票数 1

我的optionData.js如下:

代码语言:javascript
运行
复制
"options"=
[
{
  "option_text": "Just Me",
  "option_image": "just-me.svg",
  "option_is_selected": false
},
{
  "option_text": "Spouse/Partner",
  "option_image": "spouse-partner.svg",
  "option_is_selected": false
},
{
  "option_text": "Child/Children",
  "option_image": "child-children.svg",
  "option_is_selected": false
},
{
  "option_text": "Grand Children",
  "option_image": "grandchildren.svg",
  "option_is_selected": false
},
{
  "option_text": "Parent(s)",
  "option_image": "parents.svg",
  "option_is_selected": false
},
{
  "option_text": "Pet(s)",
  "option_image": "pets.svg",
  "option_is_selected": false
},
{
  "option_text": "Anyone Else",
  "option_image": "anyone-else.svg",
  "option_is_selected": false
}
]

这是我的options.js文件

代码语言:javascript
运行
复制
calc_option_set1: function(){
    var options_set = this.options;
    option_count = options_set.length;
    upperRowObjects = [];

    if(option_count == 2)
    {
        rowBreak = -1;
    }
    else if(option_count % 2 == 0)
    {
        rowBreak = (option_count / 2);
    }
    else
    {
        rowBreak = (option_count + 1) / 2;
    }

    for(i=0; i<rowBreak; i++)
        upperRowObjects = upperRowObjects + options_set[i];
    return upperRowObjects;
},

我是options.html

代码语言:javascript
运行
复制
{{#each option_set1}}
<div class="col-xs-2">
    <center>
        <img src="/images/{{option_image}}" class="img-responsive img-rounded img-option"/>
        <h5>{{option_text}}</h5>
    </center>
</div>
{{/each}}

基本上,我希望将这些选项划分为两个不同的行(CSS)。如果打印{{calc_option_set1}},则得到所需的对象集。但是,如果我试图像在代码中那样对它们进行迭代,我得到的错误是

“未明错误:{{#各}}当前只接受数组、游标或falsey值。”

如何对方法返回的数组进行迭代?我可以把它赋值给一个变量然后使用它吗?请帮帮我..。

EN

Stack Overflow用户

回答已采纳

发布于 2015-09-28 18:28:30

数组级联不适用于+运算符。使用Array.push()代替。

代码语言:javascript
运行
复制
calc_option_set1: function(){
    var options_set = this.options;
    option_count = options_set.length;
    upperRowObjects = [];

    if(option_count == 2)
    {
        rowBreak = -1;
    }
    else if(option_count % 2 == 0)
    {
        rowBreak = (option_count / 2);
    }
    else
    {
        rowBreak = (option_count + 1) / 2;
    }

    for(i=0; i<rowBreak; i++)
        upperRowObjects.push(options_set[i]);
    return upperRowObjects;
},

并可通过以下方式访问:

代码语言:javascript
运行
复制
{{#each calc_option_set1}}
{{/each}}
票数 2
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32829269

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档