我的代码是File node_modules/@types/webrtc/index.d.ts is not a module:

import * as webrtc from "webrtc";
const peerConnection1 = new RTCPeerConnection();

我用npm i @types/webrtc --save-dev台 typewriter 安装了 typewriter .将鼠标悬停在Visual Studio代码中的RTCPeerConnection/const peerConnection1 = new RTCPeerConnection();显示类型注释上,这样至少代码编辑器可以看到这些类型.运行tsc(或webpackts-loader)失败,出现错误.

为了解决这个问题,我try 了npm i webrtc --save次错误的try ,但它没有改变任何东西,我真的只想要打字,不管怎样,WebRTC就在浏览器中,我不需要一个软件包.(支持除外.)

index.d.ts文件实际上不是一个模块,它只是引用了另外两个文件,其中包含接口.所以我想go 掉import * as webrtc from "webrtc";,希望tsc还能看到打字.(但这是不可能的,因为我在TypeScript配置文件中排除了node_modules.)当我这么做的时候,RTCPeerConnection就不再被认出来了.

tsc表示,增加/// <reference src="node_modules/@types/webrtc/" />没有帮助.

您可以使用最少的repo here on GitLab查看存储库.我不太擅长打字,所以如果我在这方面完全错了,请原谅我的无知.

推荐答案

webrtc是浏览器的一部分;您正在try 导入一个模块.只需导入(打字)库:

import "webrtc";

您可能需要在编译器选项中使用"moduleResolution": "node".

或者使用"types": ["webrtc"]编译器选项,编译器会自动为您加载这些类型.

Typescript相关问答推荐

为什么当类类型与方法参数类型不兼容时,该函数可以接受类类型

自定义挂钩上的React useState正在忽略提供的初始状态

类型脚本:类型是通用的,只能索引以供阅读.(2862)"

找不到带名称的管道''

学习Angular :无法读取未定义的属性(正在读取推送)

仅针对某些状态代码重试HTTP请求

TypeScrip-将<;A、B、C和>之一转换为联合A|B|C

匿名静态类推断组成不正确推断

如何在NX工作区项目.json中设置类似angular.json的两个项目构建配置?

如何创建一家Reduxstore ?

将具有Readonly数组属性的对象接口转换为数组

无法将从服务器接收的JSON对象转换为所需的类型,因此可以分析数据

缩小对象具有某一类型的任意字段的范围

在单独的组件中定义React Router路由

react 路由不响应参数

使用&reaction测试库&如何使用提供程序包装我的所有测试组件

递归类型别名的Typescript 使用

React中的效果挂钩在依赖项更新后不会重新执行

Typescript泛型-键入对象时保持推理

TypeScript是否不知道其他函数内部的类型判断?