当前位置: 首页 > 知识库问答 >
问题:

不变冲突:文本字符串必须在组件中呈现

边银龙
2023-03-14

我已经从RN0.54升级到了0.57,而我的应用程序由于使用了React原生元素而几乎崩溃了。

我在textinput组件上使用了它们的错误功能,这些功能基本上使您能够为错误消息设置样式并设置错误消息。非常方便,但是升级已经打破了这些,现在我遇到了这个错误:

因此,我删除了代码,错误也消失了,但是当我运行这段代码时,仍然收到问题:

{ this.state.event.cards[i].fields[j].error && 

  <Text style={{ color: '#e74c3c', fontSize: 14, paddingLeft: 5 }}>
    {this.state.event.cards[i].fields[j].error}
  </Text>
}

共有1个答案

祖奇
2023-03-14

对我来说,只要this.state.error===undefined或者它不是空字符串,下面的代码就可以正常工作。

render() {
  return (
    <View>
      {this.state.error &&

        <Text>
          Error message: {this.state.error}
        </Text>
      }
    </View>
  );
}

如果错误状态更改为空字符串“”,您将出现前面提到的异常:不变冲突:文本字符串必须在 组件 内呈现

其原因是,当this.state.error===“”时,以下表达式将被计算为空字符串,即“”,这将导致不变冲突:文本字符串必须在 组件 中呈现

{this.state.error &&

  <Text>
    Error message: {this.state.error}
  </Text>
}

this.state.error===undefined时,表达式将被计算为undefined,这正是我们所期望的,这很好。

 类似资料:
  • 我现在想知道如何自动突出显示文本区域内的文本。我已经做了进一步的研究,找到了一种方法来实现这一点,但是我不确定它如何在用户进入搜索后仍然能够自动突出显示字符串。 注意:忽略单选按钮 下面是我在单击搜索按钮时在操作事件中尝试的方法 预期的输出应该是要突出显示的“hello everyone”中的“hello”,但我仍然不知道如何做到这一点。 编辑: 代码现在看起来是这样的,但是亮点仍然不会出现。 @

  • JSONException:JSONObject文本必须以字符6处的{开头。

  • 问题内容: 这是我尝试过的方法以及出现问题的方法。 这有效: 这不是: description属性只是HTML内容的普通字符串。但是由于某种原因,它呈现为字符串,而不是HTML。 问题答案: 检查您尝试追加到节点的文本是否没有像这样转义: 代替这个:

  • 以下是我尝试过的,以及它是如何出错的。 这个作品: 这没有: description属性只是HTML内容的普通字符串。但是,由于某些原因,它被呈现为字符串,而不是HTML。 有什么建议吗?

  • 我有一个中文/韩文字符的超文本标记语言字符串。我想使用iText将超文本标记语言转换为PDF。我读到我们需要将FONT嵌入到PDF中,以使Unicode字符显示在PDF上。 当我尝试嵌入wts11时。ttf(带有编码标识_H)或STSong Light(带有编码Unigb-UCS2-H),我只能看到汉字,但看不到韩文字符。我试着用arialuni。ttf(带有编码标识),但仍然只能看到汉字,不能看

  • 运行此代码时 我得到这个错误 read_bikeins=pdf。PdfFileReader(bikeins)回溯(最近一次呼叫最后一次): 文件“”,第1行,以read\u bikeins=pdf格式。PdfFileReader(比基恩) 文件“C:\Users\Naveen Raj\Anaconda3\lib\site packages\PyPDF2\pdf.py”,第1084行,在init s