angular – 不同语言的Firebase错误消息?
发布时间:2020-12-17 17:42:42 所属栏目:安全 来源:网络整理
导读:在视图中显示Firebase错误消息(error.message)会导致英语错误说明(例如,对于身份验证错误,如果用户凭据包含错误). 您将如何以不同语言显示消息(最佳情况:使用手机语言)? 解决方法 现在这是不可能的.我建议使用错误代码(error.code),这是一个独特的错误代码
在视图中显示Firebase错误消息(error.message)会导致英语错误说明(例如,对于身份验证错误,如果用户凭据包含错误).
您将如何以不同语言显示消息(最佳情况:使用手机语言)? 解决方法
现在这是不可能的.我建议使用错误代码(error.code),这是一个独特的错误代码,您可以创建一些东西将此错误代码绑定到您自己的文本/语言.
Firebase文档中有一个可用页面,其中包含可能对您有所帮助的错误代码列表. 看看这些链接: https://firebase.google.com/docs/reference/js/firebase.auth.Auth ? https://firebase.google.com/docs/reference/js/firebase.auth.Error https://firebase.google.com/docs/auth/admin/errors?hl=en 编辑: 我创建了一个接口来保存索引的字符串数组: export interface MessagesIndex { [index: string]: string; } 然后在一些UI或错误服务中,我已将此变量声明为上面的接口: params = { 'invalid-argument': 'Erro: Um argumento inválido foi fornecido.','invalid-disabled-field': 'Erro: O valor fornecido para a propriedade de usuário é inválido.',/* ADD HERE THE OTHERs IDs AND THE CORRESPONDING MESSAGEs */ } as MessagesIndex; 在那之后,我创建了一个函数来通过给定的代码(来自Firebase)打印它,记得拆分,因为error.code属性就像“auth / error-id”,我们这里只需要“错误 – id“,如果找不到错误代码,那么你可以返回一些”未知错误“并打印error.code,如果你想: public printErrorByCode(code: string): string { code = code.split('/')[1]; if (this.params[code]) { return (this.params[code]); } else { return ('Ocorreu algum erro desconhecido! n Codigo erro: ' + code); } } 这不是最好的代码,但我希望它有所帮助! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |