Reactjs React项目脚本过梁错误缺失“;“关键”;迭代器中元素的属性

Reactjs React项目脚本过梁错误缺失“;“关键”;迭代器中元素的属性,reactjs,eslint,Reactjs,Eslint,我正在从父组件呼叫 import { ChildClass } from '../../path/to/child' <ChildClass appData={appData} deviceOS={deviceOS} mobileFlag={mobileFlag} /> const ChildClass = props => { const appData = props.appDa

我正在从父组件呼叫

import { ChildClass } from '../../path/to/child'
<ChildClass
            appData={appData}
            deviceOS={deviceOS}
            mobileFlag={mobileFlag}
/>
const ChildClass = props => {
           const appData = props.appData,
           mobileFlag = props.mobileFlag,
           deviceOS = props.deviceOS
           return(<div>Hello etc.</div>)}
export { ChildClass }

请建议任何解决方案。

看起来您正在迭代中呈现您的子类组件。为此,React使用
组件来标识
ChildClass
的每个实例,并控制每个组件的渲染/重新渲染

<ChildClass
  key={uniqueId}
  appData={appData}
  deviceOS={deviceOS}
  mobileFlag={mobileFlag}
/>

尽管从反应文档中考虑到:

如果项的顺序可能发生变化,我们不建议对键使用索引。这可能会对性能产生负面影响,并可能导致组件状态出现问题


无论何时在迭代中显示元素列表,都应该添加一个带有唯一标识值的关键道具,以帮助您跟踪更改。如果您没有注意到,您的过梁可能会配置为失败


如果您要提到使用数组索引作为react键,那么请至少说明您通常不想这样做的原因。从列表&Keys-react-docs中:有一种非常特殊的情况,数组索引可以作为react-key来接受。@drewrese我将其作为注释添加。您是对的,这有助于理解为什么这会对性能造成不利影响。您能否提供一个代码示例,以及完整的错误消息,因为它可能会告诉您问题所在的确切行号,并且在许多情况下,提供解决方案。
<ChildClass
  key={uniqueId}
  appData={appData}
  deviceOS={deviceOS}
  mobileFlag={mobileFlag}
/>
const childItems = childs.map((child, index) =>
  <ChildClass
    key={index}
    appData={appData}
    deviceOS={deviceOS}
    mobileFlag={mobileFlag}
  />
)