我正在阅读React文档,并对主题Fragment感到困惑。因为我们基本上可以在React中返回一个数组,所以在什么情况下需要<Fragements />
?
这是一个代码示例:
const ReturnArray = () => {
const items = [
<div key={1}>Item 1</div>,
<div key={2}>Item 2</div>,
<div key={3}>Item 3</div>,
]
return items
}
const ReturnFragments = () => {
const items =
<React.Fragment>
<div key={1}>Item 1</div>
<div key={2}>Item 2</div>
<div key={3}>Item 3</div>
</React.Fragment>
return items
}
我认为他们是一样的。
大多数现有的话题谈“键警告问题”像这样在github上,但我只是想知道的用例<Fragments />
编辑:
请告诉我是否有任何歧义。
再具体一点:
请解释之间的差异<ReturnArray />
和<ReturnFragments />
。它们都返回多个无用<div>
标签的元素。为什么要花多余的<React.Fragment />
钱呢?
官方文件说
使用数组表示法与普通JSX有一些令人困惑的区别:
数组中的子项必须用逗号分隔。
数组中的子代必须具有密钥,以防止React发出密钥警告。
字符串必须用引号引起来。
为了简单起见,React提供了Fragment组件,可以代替数组使用。
考虑如何使用数组包装多个子级
render() {
return [
"Some text.",
<h2 key="heading-1">A heading</h2>,
"More text.",
<h2 key="heading-2">Another heading</h2>,
"Even more text."
];
}
以及如何使用片段来实现。
render() {
return (
<Fragment>
Some text.
<h2>A heading</h2>
More text.
<h2>Another heading</h2>
Even more text.
</Fragment>
);
}
直接取自官方文件。
片段也可以如下编写。
render() {
return (
<>
Some text.
<h2>A heading</h2>
More text.
<h2>Another heading</h2>
Even more text.
</>
);
}
我正在使用JWT创建和验证令牌,并将令牌存储在cookie中。(react前端vs Nodejs后端) 我对react cookie与universal cookie和react cookie的用法感到困惑。 这些之间有什么区别,在后端设置cookie与在前端设置cookie有什么区别?
我很困惑组件和react类之间有什么区别? 什么时候在反应类上使用组件?看起来组件是一个类,createClass创建了一个组件。 https://facebook.github.io/react/docs/top-level-api.html 反应组件 这是使用ES6类定义React组件时的基类。有关如何将ES6类与React一起使用,请参见可重用组件。有关基类实际提供的方法,请参见组件API。
我正在尝试使用react钩子创建一个悬停以显示div,我遇到了以下问题: 第69:31行:在函数“renderHideOptionalClauseTrigger”中调用React钩子“useState”,该函数既不是React函数组件,也不是自定义React钩子函数React钩子/钩子规则 搜索关键字以了解有关每个错误的更多信息。 以下是我的代码库:
我想在加载组件时进行api调用。我有以下代码: getProfile细节功能: 在这里,函数"getProfile细节"正在进行api调用,然后调度一个redux存储操作,该操作正在设置配置文件细节。 问题是,每次调用getProfile细节时,redux存储都会更新,组件会重新渲染,这反过来会触发组件didMount,并进入无休止的循环。 请建议如何构造这个。
问题内容: 是否有将功能放置在react组件中的偏好?我仍在学习反应,因此只想找出最佳做法。 问题答案: 每次渲染都会在render方法中创建一个函数,这会对性能造成轻微的影响。如果将它们放入渲染中也很麻烦,这是一个更大的原因,您不必滚动渲染中的代码即可查看html输出。始终将它们放在课堂上。 对于无状态组件,最好将函数保留在main函数之外,而传递props,否则该函数也会在每个渲染器中创建。我
问题内容: 以下是React中的反模式吗?我喜欢这种模式,因为当实例化一个组件时,它在静态函数中为我提供了上下文。然后,我可以导入该类并调用静态方法来修改状态。还是可以通过更好的方式来完成? 问题答案: 显然,这取决于条件,可能是一种反模式,也可能是一个错误。静态类方法不应与类实例一起使用。绑定到特定的组件实例和用途,这只能证明类是单例是合理的(尽管单例也经常是反模式)。如果期望有多个类实例,那么