我目前正在开发一个 Angular 项目,使用 Pascal Precht 的 Angular Translate 插件。我有一个常见问题解答页面,其中有一个答案选项卡。我想要实现的是对问题有一个动态的值(value)观。这样我就可以循环回答这些问题,并且这些问题将作为 Json 数组保存在翻译文件中。这是我的示例 json 文件。
"FAQS_QUESTION" : [
{
"question" : "Question 1?",
"answer" : "Answer 1 "
},
{
"question" : "Question 2?",
"answer" : "Answer 2"
},
{
"question" : "Question 3?",
"answer" : "Answer 3"
}
]
我尝试了下面的代码,但它不起作用。我收到“angular.js:14525 FAQS_QUESTION 的翻译不存在”
ul( ng-repeat="thumbnail in 'FAQS_QUESTION' | translate ")
li
| {{thumbnail.question}}
| {{thumbnail.answer}}
我也尝试将其加载到我的 Controller 中,但没有成功
$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")
它解决了我的问题。但每次迭代的计数对于维护来说是一件很乏味的事情。由于我们计划为每个问题设立一个部分
有人可以帮我解决这个问题吗?我不确定我是否感谢您的所有帮助。谢谢
最佳答案
在此片段中
ul( ng-repeat="thumbnail in 'FAQS_QUESTION' | translate ")
li
| {{thumbnail.question}}
| {{thumbnail.answer}}
您的值'FAQS_QUESTION'
只是一个普通字符串,因此您没有引用您的数据。另外,我认为翻译过滤器不适用于集合。
相反,尝试做这样的事情:
ul( ng-repeat="thumbnail in FAQS_QUESTION")
li
| {{thumbnail.question | translate}}
| {{thumbnail.answer | translate}}
关于javascript - 如何使用 ng-Repeat 来对数组对象进行 Angular 平移?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44961764/