2014-03-07 78 views
7

我的角度控制器可能会生成消息,我打算使用角度翻译进行翻译。Angular-Translations:动态查找翻译键的显示翻译

在控制器我目前一个变量分配给翻译键,如:

$scope.info = "core.projectconfig.created"; 

如该键有其翻译指定为

core.projectconfig.created <=> 'Project {{projectName}} created successfully' 

正如你所看到的,我还需要在翻译中替代projectName。

我想这样的事情在我看来

<P translate="{{info}}", translate-values="{projectName : projectData.ProjectName}"></p> 

,但它不工作。我如何翻译动态找到的翻译键,并在翻译后的行中添加一个范围变量?

+0

是'projectData'定义在你的范围内?你有任何错误? – PascalPrecht

+0

@PascalPrecht,很高兴在这里有作者。 :)请你确认我的语法是正确的,应该工作吗?那么这就意味着翻译的其他部分,即其他人编码的部分,并没有被应用。 –

+2

是的语法看起来不错。 – PascalPrecht

回答

3

您可以在控制器中注入$ translate指令,该指令由https://github.com/angular-translate/angular-translate提供。

以后使用$翻译这样的动态密钥:在您的消息

$translate(translation_key) 

范围变量可以使用方法如下:

$translate(translation_key, { scope_variable_key: $scope_value }) 

如:$translate("core.projectconfig.created", { projectName: $scope.projectData. ProjectName })

+0

你好Monika,请帮助我下面的离子幻灯片标签不会翻译当我切换语言,但它会正常工作时,我关闭,并再次打开应用程序它将翻译,但不是在一次