Управление зависимостями веб-компонентов; JS, CSS/SASS и файлы шаблонов

Я ищу макет структуры наших новых веб-компонентов и в настоящее время не уверен, что нашел инструмент, который будет делать все, что мы в идеале хотим, или приближается к нему, но кажется, что это было бы довольно обычная вещь, чтобы хотеть сделать в настоящее время.

У нас есть веб-приложение, которое работает на стороне сервера Java, а на стороне клиента мы активно используем JavaScript и SASS, среди другие вещи. Мы стремимся реструктурировать некоторые из наших кодовых баз и использовать компоненты для некоторых аспектов нашего динамического содержимого страниц.

Например, мы хотели бы иметь стандартный табличный компонент, который можно было бы разрабатывать полностью независимо от полноценного веб-приложения. Я вижу компонент таблицы, имеющий следующие 3 основных файла:

  • таблица.js
  • table.scss (наш файл SASS, который компилируется в файл CSS)
  • table.tmpl (наш файл шаблона, который в конечном итоге компилируется в функцию JS, например, с использованием чего-то Handlebars в качестве механизма шаблонов)

А затем, чтобы помочь развитию:

  • table-test.html (тестовая страница с некоторыми фиктивными данными)
  • table-qunit.js (тесты Qunit)

Мы надеемся, что все эти файлы затем будут скомпилированы в следующее:

  • component.js — table.js и table.tmpl скомпилированы и минимизированы, а затем помещены в какой-то больший JS-файл со всеми остальными компонентами.
  • component.css — table.scss скомпилирован и сжат, а также объединен со всеми остальными компонентами CSS.

Инструменты, на которые я смотрел:

  • requireJS - похоже, он очень нацелен на управление зависимостями JS с некоторыми мыслями о файлах ресурсов, но ничего не может найти о его использовании. и препроцессоры CSS, такие как SASS. Однако мне очень нравится идея AMD управления зависимостями JS.
  • Grunt — пакет узла, который делает часть того, что нам нужно.
  • Sprockets — Ruby-реализация чего-то похожего на то, что мы хотим
  • Плагин Javascript Maven — наиболее близкий по языкам/библиотекам ( мы уже используем Java и Maven), но опять же, кажется, что рассматривается только управление зависимостями JavaScript, а не CSS, или, по крайней мере, Файлы ресурсов SASS.

Есть ли у кого-нибудь лучшие предложения, чем приведенные выше? Что-нибудь, что приближается к тому, что мы ищем? В идеале было бы предпочтительнее что-то, что не требует Node.js или Ruby...


person Ed .    schedule 16.07.2012    source источник


Ответы (3)


Похоже, это идеально подходит для Component от TJ Holowaychuk.

person Luke Brooker    schedule 22.11.2012

Я думаю, что нашел свой ответ, и все благодаря этому сообщению ST: Maven Javascript Compressor

Ответ на мои проблемы, кажется, wro4j.

Для меня это дает следующие преимущества (все подробности см. на странице функций):

  • Maven-ized
  • на основе Java
  • Весна настраивается
  • Поддерживает файлы SASS, и шаблоны Dust (которые мы сейчас выбрали, который, как я думал, был относительно неизвестным шаблонизатором)
  • Параметры для использования во время сборки, или во время выполнения!
  • И более...
person Ed .    schedule 19.07.2012

Как работает wro4j? Также проверьте cartero!

person Brave Dave    schedule 13.04.2014