Я недавно начал использовать Угловую ui-сетку. Я не очень хорошо разбираюсь в внутренних библиотеках.Сортировка столбца сетки uI, содержащего угловой фильтр
У меня был столбец ui-grid
, необходимый для отображения процентов. SO Я добавил следующий фильтр к моему app
и использовал его вместе с ui-grid
cellFilter
.
module.filter('percentage', function() {
return function (input) {
if (!input) {
return '';
} else {
return input + '%';
}
};
})
Это работало нормально, но при сортировке этой колонки. Сортировка работает неожиданно. Предположим, что у меня есть 3 строки со значениями 100,200,300
. Я ожидаю, что он может иметь только два отсортированных состояния 100,200,300
и 300,200,100
. Но если я продолжаю нажимать на заголовок этого столбца, я получаю третье состояние как 200, 300, 100
или как 100, 300,200
. Я даже не уверен, что шаблон для этого состояния.
Если я прав, угловой фильтр работает только на views
и не влияет на модель поля. Поэтому я не думаю, что добавление filter
может повлиять на сортировку.
Кроме того, две ожидаемые сортировки (ASCENDING, DESCENDING) отображаются отлично, единственной проблемой является появление третьего. Как решить эту проблему.
Я пропустил какую-либо реализацию ?? Пожалуйста, помогите мне решить это.
Редактировать: Эта проблема возникает и для столбца строки. В моем понимании может быть только одно ASCENDING и одно DESCENDING состояние в том, что касается сортировки. Но я получаю больше договоренностей.
при использовании сортировки из ui-grid у вас есть третье состояние - заказ по умолчанию - это данные, отображаемые в том порядке, в котором он был загружен. Это можно увидеть и для их примера: http://ui-grid.info/docs/#/tutorial/102_sorting – rave
Спасибо @ rave Есть ли способ, который, если после сортировки строки после этого должны переключаться только между заказами ASCENDING и DESCENDING, избегая по умолчанию. –