Javascript 如何在meteor.js中本地化(i18n)moment.js?
如何告知meteor.js应用程序中使用的矩.js使用英语以外的其他语言?js(作为mrt软件包安装)可以很好地使用默认的英语语言 使用moment.js docs中的demo调用始终生成“en”。我注意到meteor_project/packages/moment/lib/moment/lang/de.js中有一个德语文件,但似乎没有使用 要指定:在我尝试的模板辅助对象中: 瞬间。朗(‘德’); return moment.lang()//将导致“en”Javascript 如何在meteor.js中本地化(i18n)moment.js?,javascript,internationalization,meteor,momentjs,Javascript,Internationalization,Meteor,Momentjs,如何告知meteor.js应用程序中使用的矩.js使用英语以外的其他语言?js(作为mrt软件包安装)可以很好地使用默认的英语语言 使用moment.js docs中的demo调用始终生成“en”。我注意到meteor_project/packages/moment/lib/moment/lang/de.js中有一个德语文件,但似乎没有使用 要指定:在我尝试的模板辅助对象中: 瞬间。朗(‘德’); return moment.lang()//将导致“en” 这里提到的其他选项:只是不要使用Met
这里提到的其他选项:只是不要使用Meteorite软件包。包括Moment.js客户端以及您需要的任何语言文件
mrt移除力矩
client/compatibility/moment
客户端/compatibility/moment
就这样。您不需要添加任何
标记,什么都不需要。由于Moment.js位于client/compatibility
子文件夹中,因此从client
或client
的任何其他子文件夹加载的任何客户端代码都将在Moment.js加载后运行。如果您将Moment
安装为
mrt添加时刻
那么您已经获得了语言,但是您必须手动包含它们。在packages\moment\lib\lang
找到它们。要包含它们,请转到package.js
文件,在所有其他文件之后添加您选择的语言
api.add_文件('lib/moment/lang/de.js','client')
就这样
如果你今天还使用官方的“meteor AddMomentJS:moment”,那么他们的momentum.js似乎仍然只是安装的momentum.js,没有翻译。 我的解决方法:只需打开并Str-F您想要的语言(在我的例子中是德语),然后复制并通过:
// moment.js locale configuration
// locale : german (de)
// author : lluchs :
// author: Menelion Elensúle:
(function (factory) {
...
}`
在momentum.js文件中,例如client/lib文件夹中。重新加载和他们的you with moment.locale('de')。。。自从.lang('de')被弃用以来。至于今天(2015年7月),我已经做到了:
从Moment.js github存储库下载,并将其放在应用程序的客户端文件夹中
我选择了client/lib/moment/locales.min.js
然后,您可以设置任何您喜欢的语言环境(js拥有的语言环境),并根据用户帐户设置进行更改
moment.locale('en')
// or
moment.locale('ru')
我不喜欢的是所有语言都合并在一个文件中。即使它不是太大,仍然有一些工作要做(ajax调用或类似的东西,以便只获取您需要的语言环境文件)
顺便说一下。如果您不需要所有支持的语言,您可以获取。
我相信meteor.js会在您投入生产时自动缩小此文件您可以使用的软件包 这些包使用官方momentjs:MomentMeteor包 地区: 添加特定区域设置用户的步骤 meteor add rzymek:moment locale pl 可通过以下方式获得完整的地区列表: 流星搜索rzymek:moment locale-.* 要添加所有区域设置,请使用:
meteor add rzymek:moment locales
我做了以下的翻译 您必须安装“momentjs:moment” 之后,您必须为要添加的每种语言使用以下行。我把它放在main.js文件中
//瞬间JS的法语翻译
力矩.区域设置('fr'{
月份:“janvier_février_mars_avril_mai_juin_juillet_aot_septbre_octobre_novenbre_décembre”。拆分(“),
monthsShort:“1月1日、10月1日、10月1日、11月1日、9月1日、10月1日、11月1日、9月1日、10月1日、10月1日、10月1日、10月1日、10月1日、10月1日、10月1日、10日、11月1日、7日、7、7、7、7、7、7、7、7、7、7、7、7、7,
工作日:“dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi”。拆分(“"”),
工作日短:“昏暗、黑暗、黑暗、黑暗、黑暗、黑暗、黑暗、黑暗、黑暗、黑暗、黑暗、黑暗、黑暗”,
工作日的口号:“迪鲁·马·梅·杰夫·萨”。拆分(“),
longDateFormat:{
LT:“HH:mm”,
LTS:“HH:mm:ss”,
L:“日/月/年”,
LH:“嗯,嗯,YYYY”,
LLL:“D MMMM YYYY LT”,
LLLL:“dddd D MMMM YYYY LT”
},
日历:{
萨米代:“[Aujourd'huiáLT”,
下一天:“[DemaináLT”,
下一节:'dddd[a]LT',
最后一天:“[Hierá]LT”,
上周:“dddd[dernieráLT”,
萨米尔斯:“我
},
相对时间:{
未来:“dans%s”,
过去:“我是%s”,
s:“第二个问题”,
m:“一分钟”,
mm:“%d分钟”,
h:“你是谁”,
hh:“%d heures”,
d:“联合国日”,
dd:“%d日”,
M:“联合国备忘录”,
MM:“%d MOI”,
y:“你是安尼”,
yy:“%d安尼斯”
},
序数分析:/\d{1,2}(er|ème)/,,
序号:函数(数字){
返回数字+(数字===1?'er':'ème');
},
美国公司:/PD | MD/,
isPM:功能(输入){
返回输入。字符(0)='M';
},
//如果meridiem装置未在12左右分开,则执行以下操作:
//此函数(以locale/id.js为例)
//梅里迪姆小时:功能(小时,梅里迪姆){
//返回/*0-23小时,给定meridiem代币和1-12小时*/
// },
梅里迪姆:功能(小时、分钟、岛屿){
返回时间<12小时?'PD':'MD';
},
周:{
道琼斯指数:1,//星期一是一周的第一天。
doy:4//包含1月4日的一周是一年中的第一周。
}
});
你是否在langs.js中加入了时刻?我不知道捷运包…不,我只包括与捷运添加流星流星流星流星流星。菲尼克斯在他的anwser中添加了缺失的信息,现在它可以工作了。太棒了!我想知道为什么这些信息没有包含在Meteor 1.0.3.2中,或者我错过了它?这在Meteor 1.0.3.2中不起作用。结构不一样。我正在四处寻找如何修复它。也许你知道吗?那个链接断了,我似乎无法通过谷歌找到它引用的文件。我认为当前的等效文件是。谢谢