Я пытаюсь понять, есть ли в ractivejs функция для сортировки по убыванию и по возрастанию. Я не мог найти ничего в документации.
Сортировка списка ractivejs, поддержка по возрастанию?
Ответы (1)
Нет — Ractive намеренно избегает быть служебной библиотекой «кухонной раковины». Но добавить помощника ascending
или descending
очень просто:
var helpers = Ractive.defaults.data;
// assuming a and b are numbers...
helpers.ascending = function ( a, b ) {
return a - b;
};
helpers.descending = function ( a, b ) {
return b - a;
};
ractive = new Ractive({
el: 'body',
template: '' +
'<p>ascending: {{ numbers.slice().sort(ascending) }}</p>' +
'<p>descending: {{ numbers.slice().sort(descending) }}</p>'
},
data: {
numbers: [ 9, 4, 6, 2, 4, 1, 10, 2, 7, 8 ]
}
});
Обратите внимание, что вы также можете поместить функции ascending
и descending
непосредственно в объект data
, если это предпочтительнее.
Вот JSFiddle для демонстрации: http://jsfiddle.net/rich_harris/nszt3150/
person
Rich Harris
schedule
28.08.2014
Просто хочу отметить, что если у вас есть любимая библиотека сортировки, вы можете напрямую добавить ее в качестве своего «помощника»:
Ractive.defaults.data._ = _
и получить удобный встроенный доступ к шаблону, как в примере скрипки @Rich_Harris. VanillaJS или ваша любимая библиотека, у Ractive с этим все в порядке.
- person martypdx; 28.08.2014