У меня есть проект, который использует grunt и require.js. Я хотел бы оставить все задачи javascript из файла Gruntfile и использовать r.js для моего javascript.Как использовать r.js для оптимизации файлов javascript?
Когда я выполняю r.js -o path/to/app.build.js
, система проходит и начинает оптимизировать весь веб-проект.
Я хочу, чтобы r.js просматривал мои javascript-файлы. Пехотинец может обрабатывать дерзость & images.Here является то, что моя структура каталогов выглядит следующим образом:
/src/
resources/
js/
vendor/
require.js
jquery.min.js
plugins/
pluginA.js
pluginB.js
modules/
moduleA.js
moduleB.js
moduleC.js
config.js
main.js
Когда все закончится, я хотел бы просто оптимизировать этот файл (ы) и переместить их в мой последний файл. В документах, которые я нашел fileExclusionRegExp
Но я не уверен, что это то, что я ищу.
EDIT
Спасибо @kryger! Чтобы очистить несколько вещей после тестирования, я обнаружил, что r.js остается в моем каталоге resources
. Я ищу способ сохранить r.js node_modules
& scss
. У меня есть ворчащая задача, которая позаботится о scss-файле.
Я работаю с проектом CodeIgniter, поэтому вот как выглядит моя система.
/trunk/
application/
logs/
src/ <-- all of my "source" files (un-compressed scss and js)
node_modules/
....
resources/
img/
imgA.jpg
imgB.jpg
js/
_build/
r.js
app.build.js
vendor/
require.js
jquery.min.js
plugins/
pluginA.js
pluginB.js
modules/
moduleA.js
moduleB.js
moduleC.js
config.js
application.js
scss/
application/
fileA.scss
fileB.scss
vendor/
bootstrap/
bootstrap.scss
...
site.scss
Gruntfile.js
package.json
system/
web/ <-- This is the site root directory
_dist/
resources/
css/
optimized.css
fonts/
vendor/
fontA.ttf
js/
optimized.js
Вот что мой app.build.js
выглядит.
({
'appDir': '../',
'baseUrl': 'resources/js',
'dir': '../../web/resources/js',
'mainConfigFile': '../resources/js/config.js',
'name': 'application'
})
Когда я бегу r.js -o app.build.js
, система будет проходить через каждый каталог в моей resources
папке.
Я не хочу, чтобы мои файлы php или любые файлы grunt захватывали ... Я просто хочу, чтобы r.js касался только файлов javascript.
Вот снимок экрана, чтобы показать:
Это то, что я делаю неправильно, я знаю ... Я просто не смог найти/понять, что это такое.
Что вы подразумеваете под * «начинает оптимизировать весь веб-проект» *? r.js даже не обрабатывает SASS или изображения (он может только конкатенировать файлы CSS). В любом случае, r.js делает все, что вы ему сказали, в файле buildconfig (app.build.js). Вам нужно будет поделиться своим содержанием, чтобы получить конкретные ответы. – kryger