当前位置: 首页 > 知识库问答 >
问题:

如何在创建-反应-应用中指定全局类型声明?

郎华皓
2023-03-14

我在创建-反应-应用项目中设置全局类型时遇到了问题。这是我的tsconfig.json文件。

{
    "compilerOptions": {
        "baseUrl": "./",
        "paths": {
            "components/*": [
                "src/app/components/*"
            ],
            "constants/*": [
                "src/app/constants/*"
            ],
            "services/*": [
                "src/app/services/*"
            ],
            "reducers/*": [
                "src/app/reducers/*"
            ],
            "selectors/*": [
                "src/app/selectors/*"
            ],
            "types/*": [
                "src/app/types/*"
            ],
            "pages/*": [
                "src/app/pages/*"
            ],
            "styles/*": [
                "src/static/styles/*"
            ],
        },
        "target": "es5",
        "lib": [
            "dom",
            "dom.iterable",
            "esnext"
        ],
        "allowJs": true,
        "skipLibCheck": true,
        "esModuleInterop": true,
        "allowSyntheticDefaultImports": true,
        "strict": true,
        "noImplicitAny": false,
        "forceConsistentCasingInFileNames": true,
        "noFallthroughCasesInSwitch": true,
        "module": "esnext",
        "moduleResolution": "node",
        "resolveJsonModule": true,
        "isolatedModules": true,
        "noEmit": true,
        "jsx": "react-jsx",
        "typeRoots": ["node_modules", "typings"],
    },
    "include": [
        "src"
    ],
    "exclude": ["node_modules", "**/*.js"]
}

如您所见,我在项目的根目录下创建了一个打字文件夹,我将在其中保存全局打字和其他一些打字。所以在我的打字文件夹中,我有一个global.d.ts文件,其中有这个声明。

declare global {
    interface Window { fastlink: any; }
}

但是在我的反应组件中,我有这个打字稿错误

“类型”窗口上不存在属性“fastlink”

我已经在这里调查了很多文章和帖子,也阅读了文档,但没有结果。

共有1个答案

秦才
2023-03-14
interface Window { 
  fastlink: any;
}

无需声明全局,可以直接在接口Window中定义

您可以通过执行Windows.fastlink访问它

小心使用全局变量。

 类似资料:
  • 问题内容: 我正在尝试在文件中创建如下。 问题是我发现了问题 类型“配置”没有成员“窗口” 请让我知道如何解决该问题。 问题答案: 表示该类中有一个对象,事实并非如此。 您将需要与with 一起使用,但这无济于事,因为此窗口实际上并不代表任何现有的窗口,而且它也不是视图控制器。 因此,我建议您将要使用的实际视图控制器传递给该方法: 然后从可使用UIViewController对象的类中调用它。

  • 我已经创建了一个TestReact应用程序,并用CreateReact应用程序启动了它。我用Thread start启动它,但这将启动应用程序的调试版本。我执行了npm运行build,它创建了build文件夹,但是当我从/build文件夹启动时,它仍然会启动应用程序的调试版本。我需要它来测试优化版本的性能。我怎样才能解决这个问题?

  • 我使用这个配置将全局css配置应用到基于JavaScript的React项目中: css文件: 阿普泰克斯 但是没有应用例如字体样式。你知道基于TypeScript的React项目合适的配置是什么吗?

  • 我有大约40个API,它们具有类似的基本响应结构,如下所示: 因此,我有一个基本响应类,采用T类型的泛型,如下所示: 因此,对于API A,它返回类型为的对象及其自己的字段,我将返回响应作为控制器中的API响应: 在控制器中:响应数据=新响应();ResponseEntity response=新的ResponseEntity 在swagger中有没有一种方法可以递归地指定响应对象的模型?例如,我

  • 因此,我使用创建-反应-应用程序开发了一个小型 React 应用程序。(我总是从头开始制作应用程序。 然后,在我对它感到满意之后,我决定运行来制作优化的生产构建。 有人可以告诉我如何运行生产版本而不是开发版本吗?

  • 问题内容: 大家好,我还是新手,我不知道如何使用全局变量。我想将“ this.props.topic.text”设置为全局变量,以在项目的其他应用程序上使用它。我怎样才能做到这一点 ? 问题答案: 这是一个可怕的想法,但是在React中使用全局变量的最好/最简单的方法是将其放在上。在组件中,您可以执行类似的操作,然后通过其他任何地方进行访问。 理想情况下,如果您有数据,并且在可能的状态下,需要在各