gpt4 book ai didi

reactjs - 如何在 intl.formatMessage 中使用占位符

转载 作者:行者123 更新时间:2023-12-03 23:13:24 29 4
gpt4 key购买 nike

我正在尝试使用 react-intl为我的应用添加本地化。像这样

<FormattedHTMLMessage id="marker.title" values={{
name: (b.name !== null ? b.name : "Bench"),
seats: Tools.showValue(b.seats),
material: Tools.showValue(b.material),
color: Tools.getColorNameFromInt(b.color),
lat: b.lat,
lng: b.lng,
}}/>

但我需要一个字符串,所以我尝试了这个
const title = this.props.intl.formatMessage({
id: "marker.title",
values: {
name: (b.name !== null ? b.name : "Bench"),
seats: Tools.showValue(b.seats),
material: Tools.showValue(b.material),
color: Tools.getColorNameFromInt(b.color),
lat: b.lat,
lng: b.lng,
}
});

我收到以下错误消息:
Error: The intl string context variable 'name' was not provided to the string '{name}<br/>Seats: {seats}<br/>Material: {material}<br/>Color: {color}<br/>Location: {lat} / {lng}'
en.json
{
"marker.title": "{name}<br/>Seats: {seats}<br/>Material: {material}<br/>Color: {color}<br/>Location: {lat} / {lng}"
}

最佳答案

想通了,如果你这样做,它会起作用

this.props.intl.formatMessage({id: "marker.title"}, {
name: (b.name !== null ? b.name : "Bench"),
seats: Tools.showValue(b.seats, this.props.intl),
material: Tools.showValue(b.material, this.props.intl),
color: Tools.getColorNameFromInt(b.color, this.props.intl),
lat: b.lat,
lng: b.lng,
});

让我们希望当我再次陷入这个问题时,我能再次找到这个答案。

关于reactjs - 如何在 intl.formatMessage 中使用占位符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50151624/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com