reactjs - 如何将 RectIntl 格式化消息添加为 html 属性
问题描述
我有一个标题徽标图像,应该从 i18n 消息中呈现 alt 和 title 属性。
message_en.json
{
"logoTitle": "Link open in new tab or window",
"logoAlt": "some description goes here.."
}
header.js
import { FormattedMessage } from 'react-intl/dist';
<a
href={url}
title={<FormattedMessage id="logoTitle"/>}
>
<img
src={src}
alt={<FormattedMessage id='logoAlt' />}
/>
</a>
在浏览器中,alt 和 title 呈现为 [Object][Object]
<a title="[object Object]">
<img id="masthead__logo__img" src="../assets/images/logo.png" alt="[object Object]">
</a>
在这种情况下如何呈现 FormattedMessage?
解决方案
FormattedMessage
是一个渲染 HTML 的 React 组件。要呈现纯字符串,请改用intl.formatMessage
函数:
title={intl.formatMessage({ id: 'logoTitle' })}
推荐阅读
- r - 无法编织降价,因为 plot.new 尚未被调用
- python - 散景服务器 - 运行应用程序处理程序时出错
- python - 如何在 sqlalchemy 中为我的主键列配置序列对象?
- eclipse-rcp - 如何在 RCP 应用程序启动后设置窗口标题
- umbraco - 如何从 Live Site 本地运行 Umbraco
- mysql - 定义 a has many through 与多态性的关系
- python-3.x - AWS API Gateway Lambda 失败,状态为 200
- apache-spark - PySpark - DataFrame 上的多个联合变得越来越慢
- c++ - 当调用它的函数结束时,防止我的向量被删除
- node.js - 如何获取 Sequelize 验证错误信息?