Стандарт не запрещает кастомные атрибуты, использование стандартных атрибутов типа «name» или «id» в данном ключе ещё более неправославно, префикс «data» семантически не соответствует назначению.
Контекст скрипт-тега указывает на узел DOM, являющийся экземпляром компонента, к этому легко привыкнуть.
Библиотека не предназначена для замены/альтернативы Web Components.
2 kB — это не не так много, раз в 10 меньше, чем обычно тянут для такого-же назначения
Вы создаёте Shadow Root с помощью document.CreateElement? — уважаю, я тоже люблю настоящий хардкор.
1. То, что Вы не поняли в чём моё решение — полностью моя вина, признаю и каюсь, эпистолярный жанр -не относится к моим сильным сторонам.
2. Библиотека не предназначена заменить собой Web Components.
3. Она может помочь при создании Shadow Root. Способом полностью основанным на давно принятых и действующих стандартах.
4. Она так-же может быть использована и вне контекста Web Components.
5. Инкапсуляция стилей не является задачей W3View, см. пп. 2 и 3
6. Возможно мне действительно стоит добавить примеры кода в статью, или написать ещё одну статью с развёрнутым how to, дабы снять в дальнейшем подобные недопонимания.
Если существует возможность, значит существует опасность
Вы сами, -не находите, что приведённый Вами аргумент выглядит не убедительно и даже наверное смешно?
Я повторюсь — Web Components — это хорошо но для других целей.
Наверное не очень правильно сравнивать W3View с Web Components, слишком разное назначение, и приложения собранные на W3View тоже можно оформить и дистрибьютировать в виде Web Component.
Для сравнения лучше подойдёт Polimer или React
Циклы и условия в «шаблонах» -это то, чего я старался избежать, как и самих «шаблонов».
Логика должна реализовываться в скрипте. Для отображения списков специально предусмотрен встроенный компонент array-iterator он принимает на входе массивы.
Тип компонента можно передавать в рантайме.
Нет, даже своего собственного синтаксиса не имеет :) использует простой HTML и DOM API.
Позволяет православно создавать переиспользуемые компоненты, но разве этого мало?
С чем сравниваем?
Либа не провоцирует создание лишнего кода, зато провоцирует декомпозицию.
Нарезал шаблон, навесил обработчики. Нарезать можно с любой требуемой гранулярностью, конфликты имён исключены.
Конечно, каждый компонент имеет своё теневое дерево, но я имел в виду то, что все Custom Elements регистрируются в единой области, и это несколько мешает, например при внутренней декомпозиции.
W3View — если хотите, -это то, что я ждал от Web Components, но не дождался.
Каждый модуль в W3View имеет свой собственный нейм спейс и при подключении в другой модуль экспортирует его (как модуль в JS). Исключаются конфликты имён.
Контекст скрипт-тега указывает на узел DOM, являющийся экземпляром компонента, к этому легко привыкнуть.
Библиотека не предназначена для замены/альтернативы Web Components.
2 kB — это не не так много, раз в 10 меньше, чем обычно тянут для такого-же назначения
Вы создаёте Shadow Root с помощью document.CreateElement? — уважаю, я тоже люблю настоящий хардкор.
2. Библиотека не предназначена заменить собой Web Components.
3. Она может помочь при создании Shadow Root. Способом полностью основанным на давно принятых и действующих стандартах.
4. Она так-же может быть использована и вне контекста Web Components.
5. Инкапсуляция стилей не является задачей W3View, см. пп. 2 и 3
6. Возможно мне действительно стоит добавить примеры кода в статью, или написать ещё одну статью с развёрнутым how to, дабы снять в дальнейшем подобные недопонимания.
осторожнее с пет проектами на W3View :), Вас может начать тошнить от %ваш_любимый_фреймворк% — проверено лично.
если правда интересно, -в статье есть ссылки, постараюсь развёрнуто ответить на Ваш вопрос сегодня вечером.
Вы сами, -не находите, что приведённый Вами аргумент выглядит не убедительно и даже наверное смешно?
Я повторюсь — Web Components — это хорошо но для других целей.
Для сравнения лучше подойдёт Polimer или React
Логика должна реализовываться в скрипте. Для отображения списков специально предусмотрен встроенный компонент array-iterator он принимает на входе массивы.
Тип компонента можно передавать в рантайме.
Позволяет православно создавать переиспользуемые компоненты, но разве этого мало?
Либа не провоцирует создание лишнего кода, зато провоцирует декомпозицию.
Нарезал шаблон, навесил обработчики. Нарезать можно с любой требуемой гранулярностью, конфликты имён исключены.
W3View — если хотите, -это то, что я ждал от Web Components, но не дождался.
Каждый модуль в W3View имеет свой собственный нейм спейс и при подключении в другой модуль экспортирует его (как модуль в JS). Исключаются конфликты имён.