Я хочу объединить несколько модулей в один файл, но я не могу найти официальный документ о том, как это сделать. Теперь я использую метод ниже, он работает, но мне интересно:RequireJS несколько модулей в одном файле
- Технически ли это?
- Как RequireJS проверяет, загружен модуль или нет? Используя имя модуля или имя файла?
- Будет ли это решение инициализировать модули несколько раз в некоторой ситуации?
index.html
<script src="require.js"></script>
<script>
requirejs.config({
paths: {
'a': 'test',
'b': 'test'
}
});
require(['a', 'b'], function() {
console.log('a & b loaded');
});
</script>
test.js
console.log('loading test.js');
// I have some init here, like "Avoid `console` errors in IE"
define('a', function() {
console.log('a module');
});
define('b', function() {
console.log('b module');
});
Спасибо, но я использую PHP-шаблон, у которого есть какой-то гнездовой JS-вызов, поэтому оптимизация выглядит сложной для меня, во всяком случае, я проголосую –
Только один модуль для каждого файла рекомендуется практиковать, но это не делает 2 или больше всегда неправильно. «НЕТ» в этом ответе кажется слишком предписывающим для меня. Я думаю, что AlexCode на деньги. Как и большинство вещей, ключ должен понять, почему 1 на модуль рекомендуется - я считаю, что это позволяет эффективно использовать оптимизатор r.js. У нас есть причины не использовать r.js, так как у нас есть своя стратегия оптимизации. Загрузка нескольких модулей на файл (в нашем случае, построенная на стороне сервера, а затем доставка из одного запроса Ajax) является частью нашей пользовательской оптимизации. Его «покупатель остерегается». –
Да, конечно, у меня будут файлы milion, каждый из которых содержит 10 строк производного модуля. Я думал, что RequireJS обещал эффективность ... –