Yeoman Backbone Require.js Handlebars插件i18n不适合dist构建

时间:2014-05-12 20:13:20

标签: backbone.js internationalization requirejs yeoman require-handlebars

我正在使用这个很棒的插件来管理由Yeoman创建的Backbone应用程序中的Handlebars模板:SlexAxton/require-handlebars-plugin

出于某种原因,当运行由Grunt使用RequireJS创建的生产就绪编译时,不会拾取i18n翻译。

我的应用配置如下:

require.config({
    shim: {
        backbone: {
            deps: ['jquery', 'underscore'],
            exports: 'Backbone'
        },
        underscore: {
            exports: '_'
        }
    },
    paths: {
        jquery: '../bower_components/jquery/dist/jquery',
        backbone: '../bower_components/backbone/backbone',
        underscore: '../bower_components/lodash/dist/lodash.underscore',
        hbs: '../bower_components/require-handlebars-plugin/hbs'
    },
    hbs: {
        i18n: true
    }
});

// Second call to assign dynamic variables and not have RequireJS break
require.config({
    locale: localStorage.getItem('locale') || 'en_us'
});

我在Gruntfile.js中设置的requireJS选项如下:

requirejs: {
    dist: {
        options: {
            baseUrl: '<%= yeoman.app %>/scripts',
            useStrict: true,
            wrap: true,
            findNestedDependencies: true
        }
    }
},

由于某种原因,生成的构建JS文件已将默认翻译编译为模板。我错过了什么吗?

我应该切换到RequireJS i18n plugin吗?

感谢。

编辑: 使用“require-handlebars-plugin”处理生产构建的常见做法是什么?该插件是否与Grunt的“grunt-requirejs”编译器兼容?

0 个答案:

没有答案