当我尝试捕获新数据时遇到了问题,我更改了内容并进行渲染。
import React, { Component } from 'react'
import { withNamespaces } from "react-i18next";
class Untitled extends Component {
constructor(props) {
this.columns = [...content]
}
render() {
const columns = this.columns.map((col) => {
return {
...col,
onCell: (record) => ({
record,
dataIndex: col.dataIndex,
title: col.title,
}),
};
});
return (
<div>
{columns}
</div>
)
}
}
export default Untitled
在这里,当我更改[... content]中的某些值时,我希望“常量列”将更新此新值并将其呈现在return()中。我确定[... content]更新新值时render()中有更新。但是“常量列”仍然保留旧值。
P / s:我不能像this.state {列:[]}那样声明this.columns,因为我不想更改旧版dev的代码。确实,我要在切换语言时在this.columns中获得新值this.props.t(“ TEST”)。
非常感谢您。
答案 0 :(得分:0)
您可以使用this.forceUpdate()
手动触发重新渲染
。您可以在这里https://reactjs.org/docs/react-component.html#forceupdate