Дмитрий Maestro
02.11.2017
15:04:11
то тут вотчер выручает
это тоже как то можно заменить ?
Viktor
02.11.2017
15:04:29
всего лишь 2?)))
Дмитрий Maestro
02.11.2017
15:04:36
ну пока да )
Google
Дмитрий Maestro
02.11.2017
15:04:45
ну я как бы на будущее хочу застраховаться )
Viktor
02.11.2017
15:04:51
помню начинались проблемы когда было 20-30К
Иван
02.11.2017
15:05:05
если вочтишь сервис, то там вариантов нет... ну rxjs... но если не собираешься мигрировать, то нафиг не сдалось
Дмитрий Maestro
02.11.2017
15:05:22
вотчю как раз таки сервис
эти 2 вотчера на них и висят
я получается с сервиса отслеживаю изменения и отрисовываю на вьюхе в зависимости от
того что пришло
Иван
02.11.2017
15:06:49
нормально, с пЫвом потянет...
Дмитрий Maestro
02.11.2017
15:07:04
хех)
спасибо за консультацию)
Иван
02.11.2017
15:08:32
а что по вотчу делаешь? много там логики представления... если нет, спускай всё сервис...
Дмитрий Maestro
02.11.2017
15:08:51
два md-select отрисовываю
ну верней перерисовываю
Google
Viktor
02.11.2017
15:10:46
Слушай)) ты можешь попробовать redux подключить
если прям совсем хочешь все вотчеры под контроллем держать)
Дмитрий Maestro
02.11.2017
15:11:22
это реактовская штука ?
Viktor
02.11.2017
15:11:25
ИМХО. Первому не хвататло именно своего редакса)
Иван
02.11.2017
15:11:40
я не силён в мд библиотеке, но если там подменить массивчик вариантов, то вполне можно спустить в сервис и забиндиться на сервисную пропертю
Viktor
02.11.2017
15:11:42
ну по сути это отдельно существующая библиотека хранилище
Дмитрий Maestro
02.11.2017
15:12:32
но на досуге поиграюсь
Иван
02.11.2017
15:14:05
Дмитрий Maestro
02.11.2017
15:15:04
не ну так то на это странице пару , на второй пару
Viktor
02.11.2017
15:15:07
Кстати там было норм, но потом все стало множиться и стало страшно)) спасло vue с его частичным внедрением)
Дмитрий Maestro
02.11.2017
15:15:08
так до сотки и дойдет
Иван
02.11.2017
15:17:30
Viktor
02.11.2017
15:18:09
Ну так лучше не делать, но в качестве опыта было полезно
Дмитрий Maestro
02.11.2017
15:18:33
не мне тимлид руки оторвет если я в ангуляр заихну компоненты реакта )\
Иван
02.11.2017
15:19:00
Viktor
02.11.2017
15:19:43
Тут контекст у товарища, важно держать вотчеры под контролем) а что лучше их сдержит под контролем, чем отдельное хранилище всех данных)
Иван
02.11.2017
15:23:27
так до сотки и дойдет
слушай, два-три вотчера на компонент - нормальная ситуация, не вижу проблемы... если там поднимается к десятке, то скорее всего нужно уже начинать подозревать, что компонент слишком много делает и его нужно начать колоть на более мелкие... вотч сам по себе не такой уж плохой подход, пока все варианты обозримы и контролируемы.
Алексей
02.11.2017
15:23:50
а почему впринципе так много вотчеров? что у вас там такое?
+1 к Ивану
Дмитрий Maestro
02.11.2017
15:25:02
Google
Дмитрий Maestro
02.11.2017
15:25:15
ну щас примерно так и есть на 1 компонете 1-3 вотчера
Anb
02.11.2017
15:26:54
Товарищи подмоги пожалуйста
Достался проект на кофескрипте с ангуляром не могу понять в чем проблема
https://pastebin.com/gY6e0Dgi
Не выводит ничего
При это мнет стектрейса в консоли
Есть ли способ вывести все зарегистрированные кастомные диррективы?
Иван
02.11.2017
15:34:25
Anb
02.11.2017
15:35:11
template: '<div>hello directive</div>'
replace: true
собственно говоря это hello world
Иван
02.11.2017
15:35:31
Bohdan
02.11.2017
15:36:17
Anb
02.11.2017
15:36:46
В соседнем файле есть module('app')
Иван
02.11.2017
15:37:25
Ruslan
02.11.2017
15:38:09
с кофе все ок, синтаксис адекватен, что-то в самом конфиге
Anb
02.11.2017
15:39:34
Удивительно
Дело в камел кейсе было
Иван
02.11.2017
15:40:28
Anb
02.11.2017
15:40:38
Видимо angular все заглавные буквы транслирует
в -/:/...{w}
Google
Ruslan
02.11.2017
16:01:41
т.е. директиву нужно было использовать так: <-my-directive> ?
Bauyrzhan
02.11.2017
16:09:37
Max
02.11.2017
16:15:43
Всем привет ребята , подскажите как юзать $watch на проекте, говорят что он юзалса в далеком 2013
Alexey
02.11.2017
16:59:28
Max
02.11.2017
17:00:11
мне надо проект старий
Дмитрий Maestro
02.11.2017
17:38:26
Alexey
02.11.2017
17:40:54
Bauyrzhan
02.11.2017
17:47:31
Можешь его заимплиментить к себе в проект
Дмитрий Maestro
02.11.2017
17:47:51
Ознакомлюсь
Max
02.11.2017
17:56:22
сказали что на проекте будет использования $watch есть примере где он используетса ?
Ilya
02.11.2017
18:04:56
Бегите оттуда
Max
02.11.2017
18:52:08
Да вообще не вариант, знаю что будет полная жесть
Проект 2013 года уже его не перепишет никто даже на 1.6
А фичы надо пилить
Алексей
02.11.2017
20:14:49
А фичы надо пилить
это тролинг, watch ещё как используется, посмотрите доки официальные https://docs.angularjs.org/api/ng/type/$rootScope.Scope#$rootScope.Scope.$watch-examples
Может ещё это пригодиться: https://www.sitepoint.com/mastering-watch-angularjs/
Но надо понимать, что часто можно обойтись без вотча вообще, точнее без его использования в логике приложения, как частый кейс - валидация, зачастую достатчно использовать директивы onblur/встроенные валидации. Также начиная работать с вотчами - одна неочевидная вещь, при создании вотча сохраняйте его в переменную, например var a = $watch();, тогда когда вотч будет не нужен его можно снять выполнив a()
Max
02.11.2017
20:16:45
спасибо
Igor
02.11.2017
20:20:31
лолъ
Иван
02.11.2017
22:17:29
Астрологи объявили неделю $watch?
Вот все, кто так топит за отказ от вотча, какие у вас альтернативы? Рассмотрим варианты. Первое, вы вотчите контроллерную пропертю, по-сути, вы признаётесь, что используете двусторонний биндинг, и хрен знает кто её меняет, главное, вам нужно реагировать на её изменения. Решение: по-сути, вам требуется устранить двусторонний биндинг (вот где действительное зло, а не $watch), постарайтесь изолировать контроллеры в компоненты, чтобы исключить влияния извне; внутренние ng-model'и дополните ng-change'ами, чтобы неявная обработка изменения стало явной; совсем упёртые могут заменить вотч на сеттер, хотя по сути вы поменяете шило-на-мыло (вотчерный код просто уйдёт в сеттер). Второе, вы вотчите сервисную пропертю. Решение: если вы вотчите сервис, чтобы просто прокинуть данные на вьюху, без каких либо контроллерных обработок, то просто забиндитесь вьюхой на эту проперти. Конструкция $ctrl.service.prop на вьюхе вполне себе легальна. Если контроллерные реакции все-таки нужны, смотрим на их природу: бизнесовые - проваливаем всю эту логику в сервис; логика представления - оставляем как есть. Варианты городить свой евент-емиттер, паб-саб велосипед не выдерживают критики, опять-таки вы меняете встроенный механизм, на свой (и не факт, что вы умнее создателей ангуляра). Задействование rxjs, возможно в случае если вы двигаетесь к апгрейду в ангуляр2+ или у вас сложные реакции на реакции реакций (всяческие преобразовательные операторы вам помогут сделать код чище и понятней).
Дмитрий Maestro
02.11.2017
22:19:01
Астрологи объявили неделю $watch?
Вот все, кто так топит за отказ от вотча, какие у вас альтернативы? Рассмотрим варианты. Первое, вы вотчите контроллерную пропертю, по-сути, вы признаётесь, что используете двусторонний биндинг, и хрен знает кто её меняет, главное, вам нужно реагировать на её изменения. Решение: по-сути, вам требуется устранить двусторонний биндинг (вот где действительное зло, а не $watch), постарайтесь изолировать контроллеры в компоненты, чтобы исключить влияния извне; внутренние ng-model'и дополните ng-change'ами, чтобы неявная обработка изменения стало явной; совсем упёртые могут заменить вотч на сеттер, хотя по сути вы поменяете шило-на-мыло (вотчерный код просто уйдёт в сеттер). Второе, вы вотчите сервисную пропертю. Решение: если вы вотчите сервис, чтобы просто прокинуть данные на вьюху, без каких либо контроллерных обработок, то просто забиндитесь вьюхой на эту проперти. Конструкция $ctrl.service.prop на вьюхе вполне себе легальна. Если контроллерные реакции все-таки нужны, смотрим на их природу: бизнесовые - проваливаем всю эту логику в сервис; логика представления - оставляем как есть. Варианты городить свой евент-емиттер, паб-саб велосипед не выдерживают критики, опять-таки вы меняете встроенный механизм, на свой (и не факт, что вы умнее создателей ангуляра). Задействование rxjs, возможно в случае если вы двигаетесь к апгрейду в ангуляр2+ или у вас сложные реакции на реакции реакций (всяческие преобразовательные операторы вам помогут сделать код чище и понятней).
Я не хотел холивар разводить, просто спросил если много вотчеров
Google
Дмитрий Maestro
02.11.2017
22:19:08
Есть ли это нормальным
Иван
02.11.2017
22:23:58
Итог: $watch не такое уж и зло как его малюют. В большинстве случаев вы меняете нативный (для ангуляра) механизм на какой-то другой без ощутимых выигрышей. Только переход на ангуляр2+ имеет оправдание на геноцид вотчеров, все остальное баловство и рукоблудие. Есть действительно достойнные соперники для вашей отваги: это двусторонний биндинг и декомпозиция слишком толстых контроллеров с переходом на компоненты. Я бы упарывался в эту сторону.
Дмитрий Maestro
03.11.2017
06:33:08
Emil
05.11.2017
09:30:35
Привет
Подскажите что не так?
webpack
Когда использую path: path.resolve(__dirname, '.dist'), в output. ничего не собирает.
Без path: собирает
Сборка происходит но сам dist не создается
Евгений
05.11.2017
11:46:04
Emil
05.11.2017
11:49:17
Имя каталога текущего модуля.
Евгений
05.11.2017
12:15:06
Спасибо
Artem
05.11.2017
14:46:24
Всем привет,
Нигде не могу найти информацию о "правильной" архитектуре angularjs приложения чтобы почитать.
Возможно кто-то может поделиться такой ссылкой ?
Bohdan
05.11.2017
15:37:33
Artem
05.11.2017
15:38:36
если есть общие используемые обьекты между компонентами - хранить их в сервисах ?
Bohdan
05.11.2017
15:52:46
Artem
05.11.2017
15:53:20
Viktor
06.11.2017
09:44:27
https://github.com/johnpapa/angular-styleguide/blob/master/a1/README.md