加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

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

编辑:
为了解决这个问题,我自己翻译了(用PT-BR,我的语言)并使用以下步骤实现(在TypeScript中):

我创建了一个接口来保存索引的字符串数组:

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);
        }
    }

这不是最好的代码,但我希望它有所帮助!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读