У меня есть магистральный проект с несколькими файлами js и парой файлов css.
Я бы хотел, чтобы они были минимизированы до одного js и одного css.
До сих пор мне удалось объединить и минимизировать все мои js-файлы в один файл main.min.js.
Теперь я пытаюсь сделать то же самое с файлами css.
это мой макет:
css
bootstrap.css
docs.css
...
js
optimize-node (script to run the optimizer)
app
main.js (entry point of my app)
require-main.js
index.html
это мой скрипт для его минимизации
# optimize-node
node ../../r.js -o baseUrl=. mainConfigFile=app/require-main.js
это мой require-main.js
/*globals require*/
'use strict';
// Set the require.js configuration file for your application
require.config({
// uncomment to create a single file with no optimization at all
// optimize: 'none',
baseUrl: 'js',
// Initialize the application with the main application file
deps : ['app/main'],
preserveLicenseComments: false,
out : 'main.min.js',
name : 'app/main',
paths: {
// Embed require in main.min
'requireLib' : 'lib/require.min',
// Libraries
jquery : 'lib/jquery-1.10.1',
jqueryui : 'lib/jquery-ui-1.8.21.custom',
moment : 'lib/moment-2.0.0',
datepicker : 'lib/bootstrap-datepicker-1.0.1',
[...]
},
include : ['requireLib'],
shim: {
lodash: {
exports: '_'
},
backbone: {
deps : ['lodash', 'jquery'],
exports : 'Backbone'
},
[...]
}
});
с этой конфигурацией, когда я запускаю оптимизацию-узел, все работает отлично, и создается файл js/app/main.min.js
Теперь я пытаюсь изменить конфигурацию для создания этого файла, а также файла css/main.min.css с конкатенированным и минимизированным содержимым css/*.css.
Я попытался заменить эти строки
// single file optimization
out : 'main.min.js',
name : 'app/main',
с этой конфигурацией, чтобы определить два модуля, один для js и другой для css
// multiple file optimization
dir: '../../build',
appDir: '../',
modules: [
{
name: 'app/main',
include: ['app/main']
}
],
Но это не работает, как ожидалось
Весь мой проект копируется в ../../build, и каждый файл оптимизируется
И я не знаю, как добавить еще один модуль, который бы просто ковырял файлы css
Возможно, мне следует создать файл require-css.js, который просто позаботится о файлах css/*.css.
Может ли кто-нибудь помочь мне с этим? Я думаю, это должен быть довольно распространенный сценарий