reactjs - Reactjs:为什么这在类组件中不起作用但在功能组件中起作用
问题描述
为什么这在类组件中不起作用但在功能组件中起作用?
功能组件(工作)
export default function App() {
const initCols = [
{
name: 'name',
},
];
const [cols, setCols] = useState(initCols); // works
}
类组件(不工作)
class testclass extends Component {
const initCols = [
{
name: "name"
}];
state = {cols: initCols} // donot work
}
解决方案
您不能在类组件中定义 const 值,因为它是一个类,但您可以这样做:
state = {
cols: [
{
name: "name"
}
]
};
有什么理由必须将它放在 const 变量中吗?
您还可以在组件之前定义它,然后像这样使用它:
const initCols = [
{
name: "name"
}];
class testclass extends Component {
state = {cols: initCols}