【发布时间】:2023-03-09 03:03:02
【问题描述】:
我的翻译文件如下所示:
{
"RANDOM": [
{
"ITEM": "basdf"
},
{
"ITEM": "casdf"
},
{
"ITEM": "dasdf"
},
{
"ITEM": "easdf"
}
]
}
我想随机显示其中一项:
getQuestion() {
const sizeOfRandomItems = 4;
const randomNumber = Math.floor(Math.random() * sizeOfRandomItems);
return this.$filter('i18n')('RANDOM.' + randomNumber + '.ITEM');
}
但每当我想在我的翻译文件中添加新项目时,我还必须手动更新sizeOfRandomItems。有没有办法获取翻译文件中RANDOM数组的大小?
我已经试过了:
const arraySize = this.$filter('i18n')('RANDOM');
console.log(arraySize.length);
但首先我得到一个警告:
i18n-translate.js:205 Missing key:
它返回6(这是保存数组RANDOM的键中的字符数)
【问题讨论】:
-
如果你有一个包含你的结构的变量,那么你可以这样做
myVariable.RANDOM.length -
@James 起初我还以为这也很容易,但事实并非如此。
标签: javascript json internationalization