Angular-translate,翻译数据库中的内容

Angular-translate, translate content from database

我正在使用 AngularJS 和 angular-translate 进行国际化。但是我的网站有从数据库加载的产品。由于我想避免制作 3 个不同的集合并根据语言加载一个,我想使用一个并动态翻译内容。

到目前为止,我已经尝试了直接的方法,在我的数据库中输入以下内容:

"name" : "{{'product_general' | translate}}",

但是它只是在我的网站上将其呈现为字符串。我的问题有可能的解决方案吗?

尝试在数据库中只存储占位符。您示例中单引号中的部分:

product_general

从数据库中读取后,将该引用放入视图中,它应该可以工作。

在控制器中:

$scope.valueReadFromDb = ...;

在视图中:

{{ valueReadFromDb | translate }}

或者,如果您想在控制器端而不是视图中转换某些内容,无论出于何种原因,您都可以在控制器中注入 $filter 并执行如下操作:

var translate = $filter('translate');

$scope.someVariable = translate('PLACEHOLDER');