标签: jquery-globalize

设置为生产模式时,Webpack Globalize失败构建:未提供格式化程序或解析器

我正在研究React/Webpack/Globalize应用程序.在开发模式中,事情是好的(尽管Globalize坚持编译所有语言环境而不是我选择的语言环境,但这是另一天的另一个问题).
但是,当我production: true在我的webpack配置中设置时,我在运行时遇到以下错误npm run build

> webpack --config webpack.prod.config.js

/opt/app/ui/node_modules/globalize-webpack-plugin/GlobalizeCompilerHelper.js:72
      throw e;
            ^
Error: No formatters or parsers has been provided
Run Code Online (Sandbox Code Playgroud)

我的印象是globalize webpack插件用于处理预编译.知道我为什么会看到这个错误吗?当我设置的production: false东西编译正常.

我的插件设置是:

new GlobalizePlugin({
            production: true,
            developmentLocale: "en",
            supportedLocales: [ "en"],
            output: "i18n/[locale].[hash].js" 
        }),
Run Code Online (Sandbox Code Playgroud)

当文件更改并且webpack dev服务器重建时,我收到很多这些消息,表明我没有使用的语言环境的重新编译:

[461] ./~/cldr-data/main/es-PY/dateFields.json 15 kB {0} [optional]
[462] ./~/cldr-data/main/es-SV/dateFields.json 15 kB {0} [optional]
[463] ./~/cldr-data/main/es-US/dateFields.json 15 kB {0} [optional]
[464] ./~/cldr-data/main/es-UY/dateFields.json 15 kB {0} [optional]
[465] ./~/cldr-data/main/es-VE/dateFields.json 15 kB {0} [optional]
[466] ./~/cldr-data/main/es/dateFields.json 15 kB {0} [optional] …
Run Code Online (Sandbox Code Playgroud)

node.js npm javascript-globalize webpack jquery-globalize

7
推荐指数
1
解决办法
1120
查看次数

Django i18n 和 jQuery Globalize 的单页应用程序消息

我有一个基于 Django 的 API 层,它在内部使用 Django 的 i18n 设施(ugettext 等)来提供对某些输出的翻译。该 API 提供一个单页 Javascript 应用程序,该应用程序通过 CLDN/消息文件等使用 jQuery 的 Globalize 及其自己的消息传递工具。

目前,我为 Globalize 的消息模块以 JSON 文件的形式为 UI 生成了自己的语言文件。
理想情况下,我想从一个位置驱动所有可翻译文本。我希望使用 Django 作为可翻译语言的唯一真实来源(因为我可以使用 Rosetta 作为促进翻译的一种方式)。然而,如何让两者一起工作并不是那么简单,我试图避免在它们可能已经存在的地方发明我自己的约定,以防止将来与其他开发人员混淆。

首先,有些文本块比几个单词还大。使用 Django 的 ugettext 我应该提供要翻译的文本或作为参数显示的文本 - 仅提供一个键并要求翻译存在(否则,只显示键)是否是好的约定?

其次,这种用例是否有既定的约定?
如果规范对这种情况有意义,我不想重新发明轮子或偏离规范。

第三- 我应该在两者之间做出选择吗?或者翻译是否可以存在于 Django/API 世界中,然后在 UI 请求时输出为 Globalize/messages 格式?或者我应该使用 Django 为 Javascript 提供的 gettext 实现?

谢谢

django internationalization django-i18n django-rosetta jquery-globalize

5
推荐指数
1
解决办法
421
查看次数

使用普通javascript的Jquery Globalize设置 - 未捕获的错误

我正在尝试使用建议的js/json设置(对于日期模块)使用此处建议的javascript示例来设置jquery globalize .
在这段代码中,我试图设置它并使用它来格式化jquery-ui datepicker:

(function () {

$(function () {
    $.when(
      $.getJSON("/Scripts/cldr/cldr-json/cldr-core-master/supplemental/likelySubtags.json"),
      $.getJSON("/Scripts/cldr/cldr-json/cldr-numbers-modern-master/main/en/numbers.json"),
      $.getJSON("/Scripts/cldr/cldr-json/cldr-core-master/supplemental/numberingSystems.json"),
      $.getJSON("/Scripts/cldr/cldr-json/cldr-dates-modern-master/main/en/ca-gregorian.json"),
      $.getJSON("/Scripts/cldr/cldr-json/cldr-dates-full-master/main/en/timeZoneNames.json"),
      $.getJSON("/Scripts/cldr/cldr-json/cldr-core-master/supplemental/timeData.json"),
      $.getJSON("/Scripts/cldr/cldr-json/cldr-core-master/supplemental/weekData.json")
    ).then(function () {

        // Normalize $.get results, we only need the JSON, not the request statuses.
        return [].slice.apply(arguments, [0]).map(function (result) {
            return result[0];
        });

    }).then(Globalize.load).then(function () {

        var culture = "en";
        Globalize(culture);
        $("input.datepicker").datepicker({
            prevText: '<i class="fa fa-chevron-left"></i>',
            nextText: '<i class="fa fa-chevron-right"></i>',
            dateFormat: Globalize.dateFormatter({ date: "short" })
        });
    });
});})();  
Run Code Online (Sandbox Code Playgroud)

而我得到的错误是

E_DEFAULT_LOCALE_NOT_DEFINED:尚未定义默认语言环境.在globalize.js @第105行

我究竟做错了什么?

jquery-globalize

3
推荐指数
1
解决办法
2221
查看次数

将 Jquery Globalize 与 MVC 5 结合使用

我正在尝试在 MVC5 中将 MVC 不显眼的验证与 jquery globalize 插件一起使用(与包jquery-validate-globalize结合使用)。出于学习目的,我按照此处启动了一个演示项目,但它无法使用全球化运行(它适用于默认的 Microsoft 不显眼的验证)。该模型非常简单:

public class GlobalizeModel
{
    [Range(10.5D, 20.3D)]
    public decimal Double { get; set; }

    [Required]
    public DateTime? DateTime { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我尝试在 _Layout 页面底部按如下方式启动 Globalize(视图很小,只有 2 个输入):(我从https://johnnyreilly.github.io/globalize-so-what-c ​​ha 获取必要文件的列表-想/

<script src="~/Scripts/bootstrap.min.js"></script>
<script src="~/Scripts/jquery.validate.min.js"></script>
<script src="~/Scripts/jquery.validate.unobtrusive.min.js"></script>

<!--cldr scripts-->
<script src="~/Scripts/cldr.js"></script>
<script src="~/Scripts/cldr/event.js"></script>
<script src="~/Scripts/cldr/supplemental.js"></script>
<!--globalize scripts-->
<script src="~/Scripts/globalize.js"></script>
<script src="~/Scripts/globalize/number.js"></script>
<script src="~/Scripts/globalize/date.js"></script>
<!--jquery globalize-->
<script src="~/Scripts/jquery.validate.globalize.js"></script>


<script>

    $.when(
        $.getJSON("/Scripts/cldr/supplemental/likelySubtags.json"),
        $.getJSON("/Scripts/cldr/main/en/numbers.json"),
        $.getJSON("/Scripts/cldr/supplemental/numberingSystems.json"),
        $.getJSON("/Scripts/cldr/main/en/ca-gregorian.json"),
        $.getJSON("/Scripts/cldr/main/en/timeZoneNames.json"),
        $.getJSON("/Scripts/cldr/supplemental/timeData.json"), …
Run Code Online (Sandbox Code Playgroud)

javascript c# asp.net-mvc jquery jquery-globalize

2
推荐指数
1
解决办法
1万
查看次数