WebPack ShadowDOM emulator
Есть ли уже какое-то расширение для этого или мне написать его?
Решение просто, ко всем нотам в темплейте добавляется уникальный аттрибут. для нод в одном темплейте _sh-0 для нод в другом _sh-1 и так далее. корневому элементу каждого темплейта задается _host-0 _host-1 и так далее.
далее мы указываем файл со стилем для этого темплейта где к каждому селектору в конце добавляем строку [_sh1], а все селекторы псевтокласса :host заменяем на [_host-1] и так далее.
Таким образом достигается изоляция стилей компонентов. Я стырил это у ангуляра 2, но пока это происходит все рантайм и мне это не нравится, по скольку я начал юзать вебпак (ну там для динамического бинда анбинда и перереднеринга изменившихся компонентов) то я думаю написать какую то тулзу не связаную с ui2 для достижения инкапсуляции компонентов. и это может быть какой то лоадер для вебпака.
есть ли уже что-то подобное?
п.с. всякие костыли типа бема не предлагать, цель этого всего именнно ИЗБАВИТЬСЯ от подобных хаков и начать нормально жить
п.с. вообще возможно я исключу эту возможность из рантайма юишки и сделаю отдельным независимым решением для вебпака. которое просто удобно будет юзать с юишкой вместе, да и вообще чем угодно. задача то элементарна
п.с. внешние стили все ровно смогут проникать внутрь наших элементов но это плюс а не минус. смысл в том чтобы конфликта имен классов в компонентах не было и все, а задавать какие-то общие стили для наших компонентов это хорошо, и этого нет в шадоу дом, там двусторонняя изоляция
Последний раз редактировалось Mаxmaxmаximus, 02.02.2016 в 17:36.
|