我目前正在使用Pascal Precht的插件角度转换工作Angular项目。我有一个FAQ页面,其中有一个选项卡供您回答。我想要实现的是为问题提供动态值。因此,我将只为这些问题提供一个循环,这些问题将作为Json数组存储在翻译文件中。这是我的示例json文件。
"FAQS_QUESTION" : [
{
"question" : "Question 1?",
"answer" : "Answer 1 "
},
{
"question" : "Question 2?",
"answer" : "Answer 2"
},
{
"question" : "Question 3?",
"answer" : "Answer 3"
}
]
我尝试了下面的代码,但它不起作用。我得到了一个“angular.js:不存在FAQS_QUESTION的14525翻译”
ul( ng-repeat="thumbnail in 'FAQS_QUESTION' | translate ")
li
| {{thumbnail.question}}
| {{thumbnail.answer}}
我也尝试在我的控制器中加载它而没有运气
$translate('FAQS_QUESTION').then(function (translations) {
console.log(translations.questions);
}, function (translationIds) {
console.log(translationIds);
});
我找到了一种解决方法,实现方式如下:
ul(ng-init="count = ('FAQS_QUESTION_COUNT' | translate)")
li(ng-repeat="item in getQuestionCount(count) track by $index")
p(translate="FAQS_QUESTION.{{$index}}.question")
p(translate="FAQS_QUESTION.{{$index}}.answer")
它解决了我的问题。但是,为每次迭代指示计数,维护将是一项繁琐的工作。因为我们计划为每个队列设置一个部分
任何人都可以帮我解决这个问题吗?我不确定是否感谢你的帮助。谢谢
答案 0 :(得分:0)
在此代码段中
ul( ng-repeat="thumbnail in 'FAQS_QUESTION' | translate ")
li
| {{thumbnail.question}}
| {{thumbnail.answer}}
您的值'FAQS_QUESTION'
只是一个纯字符串,因此您不会引用您的数据。此外,translate
- 过滤器不适用于我认为的集合。
相反,尝试做这样的事情:
ul( ng-repeat="thumbnail in FAQS_QUESTION")
li
| {{thumbnail.question | translate}}
| {{thumbnail.answer | translate}}