首页 > 解决方案 > 如何更改在 Firebase 身份验证中发送的消息的语言

问题描述

当我想在我的应用程序中重置密码时,我需要根据浏览器的语言更改发送消息的语言。这是我的 onSubmit 函数,我调用提交表单来发送消息。我从状态中获取价值并将其放入语言代码中。我用redux

onSubmit = () => {
    let error = {}

    if (!this.state.email)
        error.email = <FormattedMessage id='common.error.empty' />

    if (Object.keys(error).length) {
        this.setState({error})

        return
    }

    this.props.languageCode(this.props.locale)

    this.props.doPasswordReset(this.state.email).then(() => {
        this.setState({openDialog: true})
    }).catch(error => {
        this.setState({
            error: {
                ...this.state.error,
                email: error.message,
            },
        })
    })
}

标签: firebasefirebase-authentication

解决方案


感谢@Frank van Puffelen,@Miyo Alpízar @Frederiko Cesar 在这个问题这个问题中的分析

Firebase 的错误消息是针对应用程序开发人员的,所以只有英文。虽然我们很乐意以与我们提供文档时所用的语言相同的语言来提供它们,但这永远不会涵盖您用户的所有语言。

因此,您必须检测代码中的错误,将错误记录到可以检查问题的中央系统,然后向用户显示本地化错误消息。

据我所知,在 Angular 中没有标准化的方法。但如果有,它将与 Firebase 无关。


推荐阅读