【发布时间】:2020-12-16 17:30:46
【问题描述】:
当父级更改的 className 更改时,React 子级会重新渲染。
import React from 'react';
import { useSelector } from 'react-redux';
import items from './ItemsList.js';
import Item from './Item';
import './style.scss';
export default () => {
const isDisabled = useSelector((state) => state.Items.isDisabled);
return (
<div className={`container items-container col ${isDisabled ? 'disabled' : ''}`}>
<div className="row items">
{items.map((obj) => (
// All these items re-renders, when parent container className changed
<Item key={obj.id} obj={obj} />
))}
</div>
</div>
);
};
当isDisabled 更改为true 并且disabled 样式附加到父container 时,子Item 元素重新渲染。
如何在不重新渲染子元素的情况下将样式/类名附加到父元素?
【问题讨论】:
-
isDisabled是国家财产吗? -
“禁用”有什么作用?你能给我们看看吗?
-
isDisabled是 redux 状态属性。
标签: javascript html reactjs render