Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Сборка js-файла из кусков (Grunt или без него) (https://javascript.ru/forum/misc/43041-sborka-js-fajjla-iz-kuskov-grunt-ili-bez-nego.html)

vasa_c 19.11.2013 16:30

Сборка js-файла из кусков (Grunt или без него)
 
Здравствуйте!

Такая ситуация.
Есть библиотечка, состоящая из модулей. Каждый модуль определяется примерно так:
MyLib.defineModule("nameModule", ["deps1", "deps2"], function () {
    // Конструктор модуля
});


Всё это с помощью grunt'а собирается, минифицируется, линтится, тестируется... Вобщем, всё, как у белых людей.

Но, модуль может содержать достаточно объёмный код с большим количеством вложенных блоков. Хочется разбить файл на куски.

Можно тупо разбить на части и собирать через grunt-concat. Как, например, QUnit.

Но,
1. Разбивать так на части, как-то не кошерно, плюс появляются невалидные файлы, вроде:

/* Начало файла */
(function(global, undefined) {


и

)(function () {return this;});
/* Конец */


Хотелось бы какой-нибудь шаблон, с подключением модулей в нужных местах:
MyLib.defineModule("nameModule", ["deps1", "deps2"], function () {
    
// #include "vars.js" - глобальное определение переменных

// #include "part1.js"

// #include "part2.js"
    
});


2. Хочется, чтобы по исходникам можно было проходить jshint'ом, IDE на них не ругалась и автодополнение работало.

3. Нужна возможность быстро запускать тесты.

Собственно, вопросы:

- Есть, кто занимался подобным и как ощущения?
- Нет ли в grunt'е готового плагина? Не нашел.
- Какие есть идеи, как это линтить? Собирать и проверять готовый, не очень хорошо - показываются номера строк из собранного файла, ищи потом их в исходниках.
- Или забить на это?


Часовой пояс GMT +3, время: 14:00.