Angular 角度2+;动态用户界面文本
我正在开发一个不是多语言的应用程序,但客户端要求能够通过管理界面更改标签、文本甚至通知。所以我想到了一个资源文件,它可以在应用程序加载时从服务器获取,并绑定所有标签、文本和通知 不确定是否已经实施了某些措施,或者是否有更好的方法来实现这一点。我有ng2翻译,但它不会服务于通过管理屏幕的可变文本的目的Angular 角度2+;动态用户界面文本,angular,resources,dynamic-text,Angular,Resources,Dynamic Text,我正在开发一个不是多语言的应用程序,但客户端要求能够通过管理界面更改标签、文本甚至通知。所以我想到了一个资源文件,它可以在应用程序加载时从服务器获取,并绑定所有标签、文本和通知 不确定是否已经实施了某些措施,或者是否有更好的方法来实现这一点。我有ng2翻译,但它不会服务于通过管理屏幕的可变文本的目的 多谢各位 可以使用模板绑定显示所有文本,例如{{{myLabel}myLabel可以根据对服务器的请求依次分配给具有语言参数的服务器,也可以在选择特定语言设置时使用本地存储的值。服务器选项更易于管理
多谢各位 可以使用模板绑定显示所有文本,例如
{{{myLabel}
myLabel
可以根据对服务器的请求依次分配给具有语言参数的服务器,也可以在选择特定语言设置时使用本地存储的值。服务器选项更易于管理
async setText(languageId: number) {
this.text = await this.http.get('yourUrl', {
params: { languageId: languageId.toString()} }).toPromise();
}
文本可以是包含所有文本的对象,例如
"text": [
"notifications": ["warningNotification": "whatever", ...
]
您可以在整个模板中显示以下内容:
<div id="warningDiv">{{ text?.notifications?.warning }}</div>
{{text?.notifications?.warning}
并始终遵循相同的模式,根据语言的不同交付不同的text
json对象
请注意,问号是安全运算符,用于在处理请求时避免出现空错误。谢谢Zachscs,我想到了这个解决方案,但我想知道是否有更好的方法。