правильный buildstep для require.js backbone.js с текстом! плагин - PullRequest
3 голосов
/ 20 декабря 2011

в нашем приложении require.js и backbone.js мы используем множество представлений и шаблонов.

в шаге сборки мы хотим встроить шаблоны в соответствующие графические прокладки и удалить текстовый плагин из сборки в процессе.

это вообще возможно?

1 Ответ

0 голосов
/ 03 мая 2012

Об этом автоматически заботятся RrequireJs, когда вы запускаете их утилиту r.js.Никаких дополнительных усилий для «встроенного» шаблонов не требуется.

Пока ваши шаблоны определены следующим образом:

define ( ['text!templates/my.html'], function(myTemplate){})

Запуск r.js -o app.build.js будет встроеннымвсе ваши text!templates/my.html в свою собственную строку в вашем оптимизированном файле JavaScript.Вот пример моего app.build.js

 ({
    appDir: "../project-directory",
    baseUrl: ".",
    dir: "../../optimized",
    modules: [
        {
            name: "js/bootstrap"
        }
    ],
    paths: {
        text: 'js/libs/amd/plugins/text',
        order: 'js/libs/amd/plugins/order',
        jquery: 'js/libs/jquery-1.7.1',
        underscore: 'js/libs/underscore',
        backbone: 'js/libs/backbone',
        'jquery.mobile.router': 'js/libs/jquery.mobile.router'
    },
    optimize: 'uglify',
    optimizeCss: "standard"
})

RequireJS достаточно умен, чтобы встроить ваши зависимости с префиксом text!.Другими словами, текстовый плагин используется только в вашей версии разработки.Для оптимизированной версии не требуется текстовый плагин.

Если вас интересует более подробная информация, вы найдете инструкции по оптимизации вашего проекта на сайте RequireJS .Вы также можете найти подробный пример файла сборки со всеми возможными задокументированными опциями здесь

...