出于某种原因,在我的React应用程序中,以下代码使用typescript loader(ts-loader
)在Webpack中触发了一个编译错误:
handleEdit(): void {
window.location.href = `/edit/${this.props.entry.id}`;
}
TS 2540:无法分配给“href”,因为它是只读属性。
我怀疑这是我的环境中的某种奇怪的人工制品。我有这样的环境:
“React”:“^17.0.1”网络包:5.61.0网络包-客户端:4.9.1网络包开发服务器4.11.1“ts加载程序”:“^9.2.6”,“ typescript ”:“^4.4.4”,
2条答案
按热度按时间rwqw0loc1#
使用
window.location.assign
. from here窗口.位置.分配属性:
nlejzf6q2#
我一直没有想出答案,我的变通方法是使用
react-dom-router
,并将window.location.href = ...
的所有示例改为reload(...)
,这样就解决了问题。