javascript - 索引表达式不是类型
问题描述
我收到以下错误window['SERVER_DATA']
元素隐式具有“任何”类型,因为索引表达式不是“数字”类型
const initialState = Object.assign(window['SERVER_DATA'] || {}, {
auth: authState
});
有人知道如何解决这个问题吗?
解决方案
window
没有一个名为SERVER_DATA
你不能使用字符串'SERVER_DATA'
来索引的属性window
(window
确实有一个数字索引,因此错误)。
您可以使用扩充添加属性:
declare global { // this line is necessary only if you are a module
interface Window {
SERVER_DATA: unknown
}
}
或者您可以window
使用字符串转换为可索引的内容:(window as Record<string, unknown>)['SERVER_DATA'] || {}
您可以使用更具体的类型而不是unknown
推荐阅读
- css - CSS 媒体查询和移动设备
- vb.net - 多选或多选不能全选
- awk - 如果使用 AWK 未找到匹配项,则运行命令
- ionic-framework - Scrolling ion-content is scrolling header and tabs wrongly
- python - 在线程中重定向烧瓶请求
- python - 如何阻止 pydoc 在 f 字符串上出错?
- c++ - 为什么我们需要在引用右值函数参数上显式调用 std::move ?
- lattice-diamond - Linux 上的 Lattice Diamond v 3.11:ftdio_sio 的问题
- android - Android Q 保存的 Uris 在新手机上是否有效?
- angular - Angular 7 - 自定义烤面包机不显示消息