当前位置: 首页 > 面试题库 >

如何在不使用FormattedMessage的情况下在ReactIntl​​ 2.0中检索字符串

昝卓
2023-03-14
问题内容

如果我错了,请纠正我,ReactIntl​​中的FormattedMessage返回一个由span标记包装的字符串。在ReactIntl​​
1.2中,我们可以选择this.getIntlMessage('key')仅获取字符串部分。

这是我的问题:ReactIntl​​ 2.0中是否有与之等效的东西?我知道可以通过使用FormattedMessage中的Function-As-
Child模式获取字符串

<FormattedMessage id="placeholder">
    {(formattedValue)=>(
        <MyComponent ref="mycomponent" placeholder={formattedValue}/>
    )}
</FormattedMessage>

但是,它把我的组件中的“ ref”弄乱了,我无法再使用它this.refs.mycomponent了。


问题答案:

好的,可以解决这个问题。我可以像这样在组件中添加 ReactIntl 作为上下文:

contextTypes: {
    intl: React.PropTypes.object.isRequired,
},

然后,当尝试检索消息的字符串并使用它时(例如在占位符中),我可以这样做。

<MyComponent ref="mycomponent" placeholder={this.context.intl.messages.placeholder}/>


 类似资料:
  • 问题内容: 如何将字符串中的字符随机播放(例如,hello可能是ehlol或lleoh或…)。我不想使用该方法,有没有更简单的方法? 问题答案: 我不知道更简单。但是您可以使用Math.rand()功能生成字符长度范围内的随机数,而无需替换,这将给您带来混乱的输出

  • 问题内容: 就像是: 解决方案不应包含try / catch。我们中的一些人打开“打破所有错误”,他们不喜欢调试器打破那些无效的JSON字符串。 问题答案: 首先发表评论。 问题是关于不使用。 如果您不介意使用它,请阅读以下答案。在这里,我们仅使用正则表达式检查字符串,它在大多数情况下(并非在所有情况下)都适用。 看看https://github.com/douglascrockford/JSON

  • 问题内容: 我需要在检查的同时将以下更改为- ,以改善圈复杂度。 但是我不确定我将获得什么价值。 问题答案: Java(版本7之前的版本)在switch / case中不支持String。但是您可以通过使用枚举来达到预期的结果。

  • 问题内容: 有没有办法在不使用机制的情况下判断字符串是否表示整数(例如但不是或)? 问题答案: 如果你真的很讨厌在各处使用s,请编写一个辅助函数: 它将需要更多的代码来完全覆盖Python认为是整数的所有字符串。我说这是pythonic。

  • 我越来越多地尝试设计和构建我的应用程序,使它们与框架无关。这意味着使用JSR注释而不是Spring注释、JPA2接口等。但是我发现自己有时有很多困难。 例如,目前,我需要检索特定类的所有bean的列表。使用特定于Spring的方法,我可以使用ApplicationContext来,但我试图在不使用Spring应用程序上下文的情况下实现这一点。 是否有与Spring应用程序上下文等效的JSR? Ex

  • 我需要使replace方法将该文本行中的开始(包括)和结束之间的字符替换为指定字符串片段中的字符(独占,即索引end-1之前的字符将被替换)。我不能直接或间接地使用StringBuffer类替换(int start,int end,String fragment)方法。我正在尝试使eline.replace(0,3,“abc”);或eline.replace(0,3,“ABC”);工作。