Как запретить оптимизатору Require.js включать текстовый плагин в оптимизированные файлы?

tl;dr: Как мне убрать плагин text.js из моего оптимизированного файла, когда весь мой текст зависимости встроены?

Я использую оптимизатор Require.js(через Node) для оптимизации некоторых файлов JS в моем проекте. Я использую текстовый плагин для загрузки текстовых зависимостей (шаблоны HTML, CSS). У меня есть модуль, который я хочу оптимизировать, включая его зависимости, например:

define(['text!core/core.css'], function(styles) {
    // do setup stuff, return an object
});

В документации Require.js говорится, что файл core/core.cssбудет встроен при запуске . ] оптимизатор r.js, который я вызываю следующим образом:

$ r.js -o baseUrl=./src name=core out=release/test.js

Tracing dependencies for: core
Uglifying file: c:/path/release/test.js

c:/path/release/test.js
----------------
c:/path/src/text.js
text!core/core.css
c:/path/src/core.js

Хорошая новость в том, что это работает.Когда я смотрю на оптимизированный файл, я вижу встроенный текст, что-то вроде этого:

define("text!core/core.css",[],function(){return"some CSS text"}),
define("core",["text!core/core.css"],function(a){ ... })

Плохая новость в том, что плагин text.js также включен — он добавляет около 3 КБ и состоит из (насколько я могу скажите) теперь совершенно ненужный код для загрузки внешних текстовых файлов. Я знаю, что 3K — это немного, но я стараюсь, чтобы мой код был максимально оптимизирован, и, насколько я понимаю, код для текстового плагина вовсе не нужен, если мои текстовые зависимости встроены. Я могу отключить текстовый плагин, добавив exclude=textк моему вызову r.js, но если я это сделаю, я получаю сообщение об ошибке при попытке использовать оптимизированный код в браузер сообщает, что плагин text.js не может быть загружен.

Итак:

  1. Есть ли причина, по которой плагин text.js действительно необходимздесь?

  2. Если нет, существует ли параметр конфигурациидля r.js, который может исправить это поведение, или

  3. существует ли легкая прокладкадля Плагин text.js, который я могу включить, чтобы убедить Require.js, что ненужный плагин загружен?

20
задан nrabinowitz 17 April 2012 в 18:34
поделиться