如何定义导入变量类型

2024-03-09

I have noImplicitAny set to true对于我的 TypeScript 编译器。当我使用如下所示的导入时,它会抛出错误,因为我没有显式定义类型foo多变的:

import * as foo from "bar";

我能够定义一个类型foo使用 CommonJS require 语法:

const foo: FooType = require("bar");

有没有办法定义一个类型foo使用import * as ... syntax?


我相信你的意思是...

import * as foo: IFoo from "foo"

or

import foo : IFoo from "foo"

准确吗?

对此进行了讨论,但最终决定反对。 https://github.com/Microsoft/TypeScript/issues/2709

相反,建议您declare module 'bar'并给它适当的打字。一旦完成,您将能够import * as foo from "bar"通过正确的打字。

有关推荐方法的更多详细信息,请参阅此问题 https://github.com/Microsoft/TypeScript/issues/6615

一个潜在的例子:

无类型.d.ts

declare module "bar" {
    const foo:IFoo;
    export = foo;
}

tsconfig.json

{
    "compilerOptions": {
        ...
    },
    "include": [
        "untyped.d.ts",
        "src/**/*.ts",
        "src/**/*.tsx"
    ]
}

名称“untyped.d.ts”在这里没有真正的含义,我个人只是将它用作我个人项目中非类型化模块的总称。请随意命名它,只要您觉得合适即可。

附注您还可以选择使用files数组属性而不是include为此,但我倾向于不打扰,因为files不尊重exclude财产,这让一些人感到困惑。有关详细信息,请参阅文档。 https://www.typescriptlang.org/docs/handbook/tsconfig-json.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何定义导入变量类型 的相关文章

随机推荐

  • 使用 powershell 从路径获取最新创建的文件夹

    如何使用 Windows PowerShell 从路径获取最新创建的文件夹 我有路C temp我想在此路径中找到最近创建的文件夹 PowerShell 主要与管道一起工作 因此您编写的大部分内容将包括创建表示某些信息的对象 以及过滤和操作它
  • 查找最近一小时内产生的记录

    我有一个smalldatetime字段命名myTime创建记录时进行记录 我需要选择过去一小时内创建的记录的语法 我认为会是 and DATEDIFF hh datePart hh myTime DatePart hh GETDATE lt
  • 是否可以保留自定义元素的内部 html?

    使用自定义元素 我想对自定义元素内的元素进行样式设置 但是当我定义该元素时 除了影子 dom 之外的所有内容都会消失 如何将内容从元素移动到 Shadow dom 我已经有一个包装元素 div class wrapper 在阴影内 但尝试使
  • Keras:将预测与使用标准化数据训练的模型结合使用?

    我正在 Keras 中创建一个深度神经网络 以使用表格数据执行 NN 回归 最佳实践是标准化输入和输出序列 我也想使用predict函数提供各种输入集的模型输出估计 如果训练数据已标准化 我想我还需要标准化predict使用相同的缩放参数的
  • 温莎城堡延迟加载服务

    有时 我发现自己处于这样的情况 只有在满足特定条件时才需要解决服务 例如 用户可以选择发送电子邮件或短信通知 我想根据用户的选择来延迟加载电子邮件或短信服务 这样我就不必同时加载它们并浪费资源 例如 如果用户有 10 个选项怎么办 我遇到的
  • Node.js Express - 如何将 Stylus .styl 文件编译为 CSS

    我正在尝试从 Balloons http balloons io 开始构建一个应用程序 它使用 Backbone js 和 Express 来设置 UI 我从未使用过这些框架 而且我很难真正做出改变 据我了解 styl 文件被编译成 CSS
  • /etc/lsb-release 与 /etc/os-release

    我需要使用 bash 找出我正在运行的 Linux 发行版 成立这一页 https www cyberciti biz faq find linux distribution name version number 这非常有帮助 但是我的系
  • XSLT 和 xpath v1.0 查找重复项并聚合

    我想知道是否有一种方法可以在 xml 中搜索重复项 然后在找到时将所有重复项聚合到一个节点 埃克斯
  • 为什么我的 PDO 不起作用?

    我开始使用 PDO 并使用 PDO 成功连接到 MySQL 但是 当我尝试从数据库中选择内容时 什么也没有发生 没有任何回声 即使我在该表中有记录 并且列 username 存在 我的 PHP 日志中没有错误 我正在使用 MAMP 并且所有
  • 如何在 Objective-C 中编写调用 `super` 实现的 c 函数? [复制]

    这个问题在这里已经有答案了 我需要实现一个通用 C 函数 它将调用super的实现并返回值 我将在运行时将此函数注入到目标类中 目标选择器的参数数量可以是任意数量 并且只有在运行时才知道 我实现了一个C函数 如下所示 但我不知道如何调用su
  • 根据另一个数组的值对 JS 数组进行排序的最快方法?

    有一些类似的帖子 但我找不到任何可以完全解决这个特定问题的内容 我有两个配对值数组 var A 0 5 0 6 0 5 0 7 0 8 0 1 var B a b c d e f note a 0 5 b 0 6 c 0 5 d 0 7 e
  • 单击部分透明图像上的透明区域

    Given some shape I would like it to be clickable on its filled parts and not clickable thus clicking through to the elem
  • 当我使用没有 OleDBConnection 对象的 OleDbDataAdapter 对象时,为什么我的 .NET 2.0 应用程序在 .NET 4.0 下崩溃?

    这是一个使用 VS 2005 编写的 NET 2 0 应用程序 它在运行 NET 2 0 的系统上运行良好 但在运行 NET 4 0 的系统上会严重崩溃 这是代码的关键部分 string selectCommand1 string conn
  • Backbone 和 bindAll:“func 未定义”

    我在使用 bindAll 时遇到问题 我得到的错误是func is undefined 对我做错了什么有什么想法吗 我都尝试过 bindAll 因上述错误而失败 并且 个人binds 不起作用 window test Backbone Vi
  • 命令行“sort | uniq -c | sort -n”的替代方法

    I use sort uniq c sort n多年来 但今天它失败了 因为我的输入文件是 10 GB 并且我的 tmp宽度为 1 GB sort write failed tmp sortmIGbL No space left on de
  • 如何在 JavaFX 中将图像显示为工具提示?

    我想显示图像作为工具提示 它工作正常 但在某些随机点它显示出波动 我想正常显示而不出现波动 我在鼠标输入事件上显示一个新场景 其中我添加了带有图像的图像视图 并在鼠标离开事件事件上关闭它 MOUSE ENTER PHOTO CORRECTI
  • Mod security 阻止对 URI 路径的 GET 请求

    我需要阻止某个 URI 路径的 GET 请求 我正在使用异常模式 但我使用的是直接块规则 我无法使规则正常工作 example GET secure test bla bla 例子https bla bla com secure test
  • php 会话立即销毁

    当我将会话设置为瞬间时 会话似乎会起作用 然后它们就会被销毁 这是我的 phpinfo 页面 有人能看到问题吗 我无权访问 phpini 文件 您能否检查我的 cookie 设置并告诉我是否可以使用这些设置 http cksgrill ne
  • 在辅助路由中访问子级:Angular

    I have root路由定义为 const routes Routes path component HomeComponent path module1 loadChildren module1 module1 module Modul
  • 如何定义导入变量类型

    I have noImplicitAny set to true对于我的 TypeScript 编译器 当我使用如下所示的导入时 它会抛出错误 因为我没有显式定义类型foo多变的 import as foo from bar 我能够定义一个