Stas
а модалка нужна просто по тз)
Sergey
Ну то есть в модальном окне что-то вводить надо?
Stas
да
Sergey
Я просто не пойму зачем туда тащить сервисы и всю требуху
Stas
у меня сервисы передают на сервер сохранение в бд
Sergey
Забрал ввод, в хэндлере закрытия модала передал вызывающему коду
Stas
либо возвращать данные в основной контроллер
Sergey
А они там уже делают с ними что хотят
Stas
так нужно не закрывая сохранять и менять данные
Stas
я изначально неверно подошёл к задаче, но Костя натолкнул на идею, что модалка не должна быть привязана к элементу
Sergey
Внутри модального окна?
Stas
и внутри и за модальным
Stas
вот этот юайби на сколько я понял в главный контроллер вернёт данные после сохранения модального окна
Stas
или же нужно в контроллере модального окна вызывать сервис для сохранения
Stas
да на самом деле там руками его писать 3 минуты
Stas
натянул полотно на весь экран и вставил в центре элемент
Stas
при том что у меня 2 разные модалки и у них есть общие компоненты
Stas
мне так было проще сделать
Sergey
Просто кейс какой-то очень странный. Элемент который перекрывает контент обновляет перекрытый контент
Sergey
Не ну раз получилось, то ладно)
Stas
это обычный трелло
Stas
там есть действие которое закрывает модалку, а есть которое не закрывает
Stas
https://trello.com/ зайди поклацай если интересно)
Stas
и смотри как удобно получилось, в этих модалках есть дроп меню, я сделал 1 директиву на все ссылки, а через юайби я бы не смог передать такие же данные как из другого, ну точнее смог бы, но нужно было бы шаманить с бубном)
Sergey
Без кода идею не могу объять
Sergey
Я бы передавал в модал колбэк, если так сильно надо, который бы по клику стрелял
Sergey
И обновлял бы данные в родителе и соотв. в модале
Stas
возможно ты и прав, но почему не сделать свой функционал. Я имею ввиду что у меня всё нормально работает, всё разбито по нужным директивам, единственно что есть 4 лишние глобальные переменные, но нет лишнего контроллера с передачей этих же переменных и колбэками)
Sergey
Звучит так будто у тебя скоупы не изолированы и controllerAs не используется
Sergey
Ну или я не так понял термин "глобальные переменные"
Stas
контроллер эс вм я использую
Stas
и в директивы через вм к ним есть доступ
Stas
это не правильно?
Sergey
Да не, я не критикую, я пытаюсь понять что вообще происходит)
Stas
так я и спрашиваю правильно или нет, возможно я смогу улучшить что-то если я не правильно делаю
Stas
у меня есть хоум контроллер, есть несколько директив (избавить от лишнего кода главную вьюху), у них через вм такой же доступ как и в хоум контроллере
Sergey
Хорошо)
Stas
правильно / не правильно ответа нет?)
Sergey
Ну как я тебе без примера кода могу сказать правильный он или нет. Мы так можем весь день пытаться друг друга понять))
Stas
вот код директивы
Stas
angular .module('trelloClone') .directive('boardMenu', boardMenu); function boardMenu() { return { restrict: 'EA', templateUrl: '/common/directives/boardMenu/boardMenu.template.html' }; }
Stas
ну и во вьюхе лежит сам элемент
Stas
подгрузка идёт на главной странице, то-есть код этой директивы просто спрятан через ng-show
Stas
и при клике нужной кнопки я его открываю и передаю туда нужные данные
Sergey
А как ты передаёшь, там биндингов нет
Sergey
Или есть?
Stas
вроде нет, не очень понял вопрос)
Stas
данные передаются через vm.blablabla
Stas
и соответственно в директиве (точнее в штмл для директивы) получаются таким же образом
Sergey
А в чём смысл такой директивы?
Sergey
Зачем этот код выделять в отдельную сущность?
Sergey
Он же зависит от внешнего кода, причём неявно
Stas
просто что бы уменьшить кол-во в главной штмл, так как там уже найти что-то сложно было
Stas
плюс некоторые компоненты просто для повторного использования
Sergey
Но логика работы меню я так понял в глагне контроллере осталась?
Sergey
Ты эту директиву не можешь переиспользовать
Stas
Но логика работы меню я так понял в глагне контроллере осталась?
Ты имеешь ввиду все действия сохранения и т.д.? Тогда да
Sergey
Ну в меню наверняка кнопочки есть, они что-то делают
Stas
Ты эту директиву не можешь переиспользовать
как не могу, я её и так использую)
Stas
у меня есть директива дроп меню, она используется в 2 разных директивах
Sergey
И эти 2 разных реализуют методы для работы этой директивы
Stas
Ну в меню наверняка кнопочки есть, они что-то делают
кнопочки, все действия в основном контроллере
Stas
И эти 2 разных реализуют методы для работы этой директивы
они просто передают туда нужные данные, а сам штмл не меняется, единственно для позиционирования нужно менять нг класс
Sergey
Не-не
Sergey
Обработка вот кнопок на меню
Stas
Обработка вот кнопок на меню
ну обработка кнопок в директиве, а после нажатия кнопки отправляется в главный контроллер
Stas
хотя я наверное не понял вопроса)))
Sergey
Ну то есть не можешь ты её встроить куда попало, в коде контроллера должны быть методы которые вот этот html дёргает.
Sergey
А какие она хочет методы никто не знает)
Stas
так она в основном штмл встроена <board-menu></board-menu> вот так, а я просто либо показываю либо скрываю её
Stas
она как бы принадлежит главному контроллеру
Sergey
Ну вот то место куда она встроена должно в своём коде содержать логику работы с меню
Sergey
То есть я не понимаю что вообще эта директива инкапсулирует
Stas
инкапсулирует ничего
Stas
я ж уже говорил что она для сокращения кода или повторного использования
Stas
вместо добавления в главный штмл кода в 100 строк, я его вынес в отдельную директиву а в главном подключил
Stas
и соответственно для повторного использования я так же подключил как и в главной штмл
Sergey
У тебя вызывающий код должен знать про то что в его шаблоне используется эта директива и называться строго vm и содержать гвоздями прибитые в коде директивы названия методов
Stas
кажется я ничего не понял)))
Sergey
Ты ng-include изобрёл