在ractive中按类型排序

时间:2014-09-30 18:11:53

标签: ractivejs

我遇到了教程部分:http://learn.ractivejs.org/list-sections/5/

尝试选择和排序。

Ractive模板

<th class='sortable {{ sortColumn === type ? "sorted" : "" }}' on-tap='sort:type'>
    <div class="industry select">
      <select>
        {{#each type}}
          <option> {{this}} </option>
        {{/each}}
      </select>
    </div>
</th>

HTML

<div data-list></div>

Ractive脚本

var type = ['Cat', 'Dog', 'Hamster'];
var ractive = new Ractive({
  el: document.querySelector('[data-list]'),
  template: '#list-container',
  data: {
    type: type,
    sort: function ( array, column ) {

          return array.sort( function ( a, b ) {
          return a[ column ] - b[ column ];
     });
    },
    sortColumn: 'type'
  }
})

希望能够选择任何类型,然后按类型排序,比如猫;它将列出猫和列表与狗和仓鼠。

ractive的任何见解/帮助都值得赞赏!

更新

JSFIDDLE DEMO

目前它不起作用因为动物和排序不正确我认为

1 个答案:

答案 0 :(得分:0)

看起来您需要在<select>元素上设置双向绑定,以便Ractive知道sortColumn的值应该是什么:

<select value='{{sortColumn}}'>
  {{#each type}}
    <option>{{this}}</option>
  {{/each}}
</select>