globalize.js的疯狂问题

时间:2017-05-04 13:41:07

标签: jquery-globalize cldr

我花了一天的时间来试图让日期验证与globalize.js一起使用。它被证明是一个应该很简单的事情的噩梦。经过多次搜索,我发现我需要包含这些文件并按特定顺序



<script src="~/Scripts/globalize.js"></script>
    <script src="~/Scripts/globalize/message.js"></script>
    <script src="~/Scripts/globalize/number.js"></script>
    <script src="~/Scripts/globalize/plural.js"></script>
    <script src="~/Scripts/globalize/date.js"></script>
    <script src="~/Scripts/globalize/currency.js"></script>
    <script src="~/Scripts/globalize/relative-time.js"></script>
    <script src="~/Scripts/globalize/unit.js"></script>
&#13;
&#13;
&#13;

所以我运行了我的应用程序并收到了此错误

E_MISSING_CLDR:缺少必需的CLDR内容supplemental/likelySubtags

这个json数据不包括在内,所以我手动添加了文件并将其包含在我的主布局页面中

&#13;
&#13;
<script type="text/javascript">

        $.get("Scripts/cldr/supplemental/likelySubtags.json", Cldr.load);

        

    </script>
&#13;
&#13;
&#13;

但我仍然得到同样的错误,任何人都可以帮助我吗?我怎样才能让globalize.js真正起作用?

1 个答案:

答案 0 :(得分:1)

Getting started

npm install globalize cldr-data

然后

var Globalize = require( "globalize" );
Globalize.load( require( "cldr-data" ).entireSupplemental() );
Globalize.load( require( "cldr-data" ).entireMainFor( "en", "es" ) );

Globalize("en").formatDate(new Date());
// > "11/27/2015"

Globalize("es").formatDate(new Date());
// > "27/11/2015"

你想在浏览器上运行吗?你的筹码是什么?如果您正在使用网络包,请参阅此Globalize App example using webpack

如果您使用其他堆栈,请参阅其他示例https://github.com/globalizejs/globalize/#examples