gpt4 book ai didi

typescript 错误: Property 'localStorage' does not exist on type 'Global'

转载 作者:行者123 更新时间:2023-12-02 20:07:22 25 4
gpt4 key购买 nike

typescript Nerd 我有这个代码:

import * as appSettings from 'application-settings';

try {
// shim the 'localStorage' API with application settings module
global.localStorage = {
getItem(key: string) {
return appSettings.getString(key);
},
setItem(key: string, value: string) {
return appSettings.setString(key, value);
}
}

application.start({ moduleName: 'main-page' });
}
catch (err) {
console.log(err);
}

…VScode 给我错误 [ts] 类型“Global”上不存在属性“localStorage”。 [2339]关于如何解决这个问题的想法?

这是一个 Nativescript 应用程序。供引用的是整个文件/应用程序:https://github.com/burkeholland/nativescript-todo/blob/master/app/app.ts

最佳答案

这是 TypeScript 所期望的,global 类型不包括 localStorage,因此它只是试图让您知道它是一个无效属性。

您可以通过将其强制转换为 any 来简单地克服该错误。

(<any>global).localStorage = {
getItem(key: string) {
return appSettings.getString(key);
},
setItem(key: string, value: string) {
return appSettings.setString(key, value);
}
}

或者您甚至可以从通常位于项目根目录中的 references.d.ts 扩展global 类型。如果不存在,您可以创建一个。

declare namespace NodeJS {
interface Global {
localStorage: { getItem: (key: string) => any; setItem: (key: string, value: string) => any; };
}
}

关于 typescript 错误: Property 'localStorage' does not exist on type 'Global' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54370475/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com