Олекса Лелека 🎄
Олекса Лелека 🎄
видимо, без песочницы не обойтись
Олекса Лелека 🎄
но пока нету времени, чуть позже сделаю
Олекса Лелека 🎄
попробуй очистить прям перед новым заполнением
пробовала, эта проблема решается, но возвращается предыдущая - при изменении стейта на posts (список постов) в списке на миг появляются пустые поля. Собственно, эту проблему решила обнулением pageContent прямо перед запросом на бэк, но тогда вылазит вопрос с дублированием. Замкнутый круг и мракобесие)
Если обнулять и перед запросом и перед заполнением (все уже пробовала) - элементы списка снова дублируются.
pa[aad
Владислав
Ребят есть ресурс http://joxi.ru/n2Ygwe5UojyOMr
вот я его вызываю http://joxi.ru/MAjE63lC4voKl2
почему в первом случае добавляет слеш в конце http://joxi.ru/EA4LlQvtwDMNJA
Sergey
Слеш в конце чего, урл?
pa[aad
Владислав
max_ts/
Владислав
а дальше параметры
Владислав
стрелочку же нарисовал там
Stas
Олекса Лелека 🎄
Sergey
Не использовать трекбай
Олекса Лелека 🎄
Sergey
Sergey
$id это что?
pa[aad
trach by item.id
ил как там у вас
другие причины почему дублируются данные это уже логика работы в коде, хотя ее там немного
Олекса Лелека 🎄
как я поняла, это получаются одинаковые элементы для ангуляра, потому он их не затирает перед записью?
Sergey
Sergey
Ну вот $id это ваш сервис какой-то который ид выгребает?
pa[aad
то что я написал, дублируется сам dom по индексу который в кеше
но данный у меня другие приходили, так как другую страницу загружал
pa[aad
у вас что-то не то вообще
Олекса Лелека 🎄
pa[aad
Sergey
Sergey
И правда)
pa[aad
это в какой версии ангуляра такая дока ?
Олекса Лелека 🎄
https://docs.angularjs.org/api/ng/directive/ngRepeat
Олекса Лелека 🎄
Default tracking: $id(): item in items is equivalent to item in items track by $id(item). This implies that the DOM elements will be associated by item identity in the collection.
Sergey
@Nano_Mo вы можете два файла сделать? Ну чтобы это было похоже на реальный кейс. Постоянно один и тот же жсон возвращать бессмысленно
pa[aad
у вас какая версия ?ангуляра
Олекса Лелека 🎄
1.4
Олекса Лелека 🎄
pa[aad
все правильно $id берет ваш текущий элемент и использует его в качестве индекса
pa[aad
еще нужно что бы вы показали свой json файл
Sergey
Так тут от реализации $$hashKey зависит
Sergey
Если трекинг дефолтный
Sergey
@Nano_Mo ну или попробуйте добавлять в каждый элемент uuid при получении и трекать по нему
Sergey
Так оно будет думать что элементы разные
Олекса Лелека 🎄
элементы сделала разными, разнесла по разным папочкам в дополнение
первый элемент меняется на новый, справа от него "мигает" и исчезает старый элемент
Олекса Лелека 🎄
пробовала без трека вообще и с треком по title-у (точно разному)
Sergey
Вы хотя бы видео можете записать?
Sergey
Скринкаст - как происходит, как ожидается, что не так
Sergey
Потому что я например уже запутался и ничего не понимаю
Олекса Лелека 🎄
видео это не мое. Потом попробую вынести код в песочницу
Sergey
https://embed.plnkr.co/mQUSVxj3PWtZWL0tYD2z/
Sergey
Ну вот, песочница с пагинацией
Sergey
Правда там ng 1.5
Stas
и там нет запросов, там сразу готовый массив
Sergey
Это меняет ничего
Sergey
Версия ангулара - мб, 1.4 старый
Sergey
max_ts/
А почему они у вас в params не объявлены? Вообще $resource на мой взгляд - гадость. Я по крайней мере не осилил. А с тайпингами вообще ужас-ужас
Владислав
@yarrrrrrrr весть проект на них сделан, приходится на них) проблема в серваке , он первый рапрос как то магически обрабатывает, а если там в роуте поставить слеш в конце max_ts/?params то сразу становится все ок ) бред короче
Sergey
То есть вам нужен там слеш?
Sergey
У ресурса есть такая хрень ещё
Sergey
app.config(function($resourceProvider) {
$resourceProvider.defaults.stripTrailingSlashes = false;
});
Sergey
Но это по идее и на уровне индивидуального ресурса перегрузить можно
Айбек
всем привет ребят, не пинайте сильно, не работал никогда с ангуляр
есть массив, прохожу ng-repeat
и в зависимости от данных нужно чекнуть чекбокс
ng-checked='item.checked ==1' - почему то не чекает, а чекает при ng-model='item.checked'(что странно для меня)
и вот на чекбоксе висит обработчик для change
но я хотел бы И при проходе зафайрить ивент change, чтобы обработчик сработал, как это и сделать?)
Sergey
А ng-model + ng-change?
Sergey
при проходе это как - hover?
Айбек
то есть при рендере массива, проставляю чекед для чекбокса
и как отловить это событие, если при ng-checked не проставляется checked,а только при ng-model
Sergey
Вам надо при первой отрисовке запускать обработчик изменения? Создайте компонент с чекбоксом и там в $onChanges получайте все изменения модели, в т.ч. первоначальное
Sergey
Ну или попробуйте ng-model, ng-changed и ng-init="item.checked"
Айбек
в changed можно выражение передать?
Sergey
Да
Sergey
Если вы про ng-change
Sergey
Я всё время забываю как они правильно называются)
Айбек
в ng-change="Prod.actions.categoryChecked(item)" есть обработчик
но при рендере я ставлю чекед по умолчанию для некоторых, и для них как вызвать собыите change?)
все еще не могу понять)
Айбек
я думал что при ng-checked='some conditions' вызывается событие change, но почему чекед не проставляется
Айбек
вроде простая задача стоит, но кажется не могу передать правильно что хочу)
Sergey
Покажите пожалуйста пример на plunkr или чём-то таком
Sergey
Если я правильно вообще вас понял, то вы хотите что-то делать когда модели вообще присвоили значение
Айбек
да
Айбек
https://plnkr.co/edit/bervpNRb6GgbdPTRTsQ1?p=catalogue
Айбек
вот при рендере я проставляю чекед в зависимости от входных данных "item.checked"
и для них нужно вызвать собыите change, чтобы обработчик Prod.actions.categoryChecked(item) сделал нужные действия