Я пытаюсь встать и запустить задачу grunt-contrib-requirejs.
Будучи новым для RequireJS вообще и никогда не использовал оптимизатор/r.js, я действительно смущен, как заставить это работать.Почему мой grunt-contrib-requirejs ничего не оптимизирует?
В начале, я создал простую структуру каталогов, как это:
root
├── js
│ ├── helper
│ │ ├── a.js
│ │ ├── b.js
│ │ └── d-dep.js
│ └── main.js
├── node_modules
│ └── [dependencies from package.json]
├── Gruntfile.js
└── package.json
Я проверил его в браузере и все зависимости будут загружены правильно есть.
Мои Gruntfile:
module.exports = function(grunt) {
grunt.config.init({
requirejs: {
options: {
baseUrl: 'js/',
mainConfigFile: 'js/main.js',
dir: 'target/',
keepBuildDir: true
}
}
});
require('load-grunt-tasks')(grunt);
}
main.js:
require(["helper/a", "helper/b"], function(util) {
console.log('main.js loaded');
});
a.js
console.log('a.js loaded');
b.js
define(['js/helper/b-dep.js'], function(bdep) {
console.log('b.js loaded');
});
б-dep.js
console.log('b.js dependency loaded');
Когда работает grunt requirejs
, я получаю Done, without errors.
сообщений, но не могу видеть любой оптимизированный файл - Я предполагаю, что ошибка в Gruntfile, вероятно, с путем.
Вы видите что-нибудь, что вас поразит? Почему ничего не оптимизировано, хотя сказано: Done, without errors.
?
Спасибо! снова просмотрев возможные опции для 'r.js', я также заметил, что мне не хватает' out', который определяет имя выходного файла. К сожалению, он все еще не работает - мне нужно добавить что-то в свой файл 'main.js', еще немного? – Sven
Мой первоначальный ответ был вызвав ваш код. Я воспроизвел вашу конфигурацию здесь и заметил еще одну проблему. Я отредактировал свой ответ. – Louis
Вау, наконец, он работает! Спасибо!Я все еще ошибся в своем модульном дереве, но это исправление для меня - после того, как часами стукнула головой о стену ;-) – Sven