Nikolai
мне нет
Danila
что не понятно ?
Anton
Всем привет. Такой вопрос. Есть 2 элемента директивы
<first>
<second id="someid" some-attr="{{ blablabla }}"></second>
</first>
В контроллере first я записываю в переменную element[0].querySelector('[id]')
Но когда я её вывожу в консоли, переменная получается не отрендеренной с уже вычисленным значением blablabla, а выводится просто как <second id="someid" some-attr="{{ blablabla }}"></second>
Есть какие-нибудь идеи из-за чего может такое возникать, что дочерняя директива ещё не просчитана, а первая уже выполняется?
Anton
а через $timeout с 0, как и ожидалась, уже нормально отрабатывает
Anton
насколько кстати плохая практика юзать $timeout с 0 для ожидания рендеринга? есть вероятность, что за 16 мс оно не успеет отрендериться
Vlad
работать в контроллерах с дом элементами напрямую - плохая практика
Vlad
element[0].querySelector('[id]') - зачем он тебе там?
baur.sha
Поясните по хардкору что такое и как работает $scope.$watch
Vlad
это штука для обработки изменения переменных $scope
Vlad
можно обрабатывать эти изменения
Vlad
https://docs.angularjs.org/api/ng/type/$rootScope.Scope
Vlad
вот как бы по хардкору всё описано
Vlad
единственное что, могут быть небольшие проблемы с использованием этой штуки в controller As синтаксисе
Nikolai
Vlad
ну, это не совсем то, watch как observer работает
Nikolai
по сути да, но когда есть сеттер, то в нём обрабатывать newVal более лучше
Nikolai
но воч удобен, когда надо deep watch
Anonymous
Здравствуйте, котики. Есть один контроллер, внутри которого крутится slick с ng-repeat. Нужно добавить ещё один slick, который бы отслеживал и повторял положение первого. Как такое можно провернуть?
ㅤ
Иван
а напомните пожалуйста хорошие практики использования данных сервиса на вьюхе и реагирование самого контроллера на изменение в сервисе... что-то сегодня внезапно такие азы вогнали меня в ступор... пока сделал "на отъ*бись" {{ $ctrl.service.data }} на вьюхе, но догадываюсь, что это не особо здорово и не покрывает вариантов использования самого контроллера... неужели ничего лучшего чем $scope.watch(service.data) ничего не придумали?
krn
мб будет лучше watchCollection
Nikolai
Иван
По-моему, {{$ctrl.service.data}} норм
Да, но как самому контроллеру реагировать на изменение данных в сервисе? Если всё-равно придётся писать $scope.watch(()=>this.sevice.data, ...), то возможно стоит переложить эти данные в свойства контроллера и на вьюхе ссылаться уже на них... Получится что-то типа $scope.watch(()=>this.sevice.data, ()=>{this.serviceData = this.service.data; /* дополнительная работа */}) и на вьюхе {{$ctrl.serviceData}}... Просто хотелось бы уточнить, не появилось ли ничего нового из лучших практик ванильного ангуляра для этих кейсов? Догадываюсь, что где-то в этот момент люди начинают вкорячивать ngrx в проект, но у меня что-то на это нет ни времени ни желания...
Nikolai
Там же один фиг объекты по ссылке присваиваются. Что вотчить, не имеет значентя
Иван
Повышаем инкапсуляцию, прости господи... 😂
baur.sha
йоу чуваки
baur.sha
кто-нить имеет опыт с $translateProvider
Nikolai
да
Nikolai
или нет
Nikolai
но ты спроси, я что-то с ним делал
baur.sha
у него есть метод или плагин либо костыль которые выгружает все словари в json
Nikolai
да
baur.sha
?
Nikolai
есть
Nikolai
$translate.getTranslationTable(appLang);
Sasha
3500 вотчеров и 16ms дайджест цикл. Вроде если более 2000, стоит уже бить тревогу?
Viktor
воообще не обязательно
Viktor
есть страница с 30К вотчерами, работает все быстро
Sasha
хотя, вроде есть мнение, что если мы укладываемся в 50-100ms в дайджест цикле, то все ок
Viktor
но главное на такое кол-во вотчеров не вещать директивы
Viktor
потому что тогда начинается капут
Sasha
Viktor
кастомные директивы, не те, которые зарезервированны, а по типу my-directive-for-this-hernia
Sasha
Насчет вотчеров, вчера искал всякие статейки, понял, что все-таки пофиг сколько вотчеров, главное время выполнения цикла
Sasha
А что с директивами происходит? Не совсем понимаю, как это влияет
Viktor
кастомные считаются дольше, т.к. задействуют больше сторонных ресурсов
Viktor
вот пример на днях был. Надо было сделать фильтр валют по токену от сервака
Viktor
около 500 строк
Viktor
повесил директиву кастомную, грузилось около 2х сек. Убрал и сделал фильтр, грузится моментально
Sasha
Вроде фильтры со сложной логикой как раз не рекомендуется
Viktor
логика тривиальная, поэтому и получилось сравнить более-менее адекватно
Sasha
Кстати, еще насчет производительности.
Как в 1.5 сделан геттер? будет ли разница в скорости по сравнению с методом?
Anton
Nikolai
Божественный SEO добродела
Dmitriy
ребят кто то реализовывал многоуровневое меню на ангуляр материал ?
Sasha
Dmitriy
подскажи плиз у меня на на первом уровне у элементов может быть , а может не быть дочерних
Dmitriy
получилось сделать так что при наводе мышки открываются дочерние элементы , но после перевода курсора например на элемент у которого нет дочернего , дочерние элементы висят и не скрываются
Dmitriy
как это пофиксить
Anton
Сменил работу с React на AngularJS (так получилось), я удивляюсь как вы все тут ещё не спились
Sasha
Я скурился например
Sasha
Dmitriy
обычное
Dmitriy
md-toolbar
Dmitriy
внутри оперделил md-menu-bar
Dmitriy
а внутри его уже md-menu
Dmitriy
как отслеживать состояние md-menu открыто оно или нет
Dmitriy
?
Sasha
Ivan
Angular 1.5, $routeProvider как указать 'динамический' when('/', goToDynamic), который будет определятся в зависимости от Роли юзера (Ajax get запрос)?
Александр
А выполнить запрос и потом стейты объявить?
Александр
Но по идее разные роуты - разные компоненты. Зачем динамика?
Ivan
Если юзер заходит в корень и Он админ, то редирекнуть Его на Админку, иначе на какой нить грид/гостевую страницу
Ivan
Походу вот норм схема: http://fdietz.github.io/recipes-with-angular-js/urls-routing-and-partials/listening-on-route-changes-to-implement-a-login-mechanism.html
Александр
в angular 4 есть гуарды, мб в 1 есть что-то подобное
Anton
Только пароли от скачанных архивов нигде не написаны)
Aleksey
/stat@combot
Combot
combot.org/chat/-1001024737789