【发布时间】:2021-05-09 13:19:18
【问题描述】:
我需要将选定的语言存储在本地存储中。这是我的任务:
页面初始化后检查用户之前是否选择了语言,如果是 -> 将所选语言设置为默认,如果没有 -> 使用浏览器语言,如果支持列表中没有浏览器语言,则使用默认('en' )。
这是我的代码
public languages = [{
name: 'English',
code: 'en',
icon: 'assets/images/flags/en.png'
}, {
name: 'French',
code: 'fr',
icon: 'assets/images/flags/fr.png'
}, {
name: 'Русский',
code: 'ru',
icon: 'assets/images/flags/ru.png'
}];
this.selectedLanguage = this.languages.find(lang => lang.code === this.translate.defaultLang);
changeLanguage(language) {
if (isPlatformBrowser(this.platformId)) {
this.translate.use(language.code);
}
this.selectedLanguage = language;
}
【问题讨论】:
-
只要使用
localStorage.setItem('lang', language) -
不需要对角度做任何事情。只需使用
localstorage.setItem('name',language)。要检索使用 localstorage.getItem ('name')`。注意:localstorage 只存储为字符串,所以使用 JSON.stringify 和 JSON.parse -
非常感谢您抽出宝贵时间:)
标签: html angular typescript