Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Typescript 在Create React应用程序的@types模块中导入根级别文件+;打字脚本设置_Typescript_Webpack_Create React App_Codemirror - Fatal编程技术网

Typescript 在Create React应用程序的@types模块中导入根级别文件+;打字脚本设置

Typescript 在Create React应用程序的@types模块中导入根级别文件+;打字脚本设置,typescript,webpack,create-react-app,codemirror,Typescript,Webpack,Create React App,Codemirror,我正在做一个用CreateReact应用程序(没有弹出)构建的项目,我已经安装了codemirror和模块 类型的设置方式是,它用来扩充类型,以匹配Codemirror如何通过插件添加功能 例如,如果您只是这样做: import {EditorConfiguration} from "codemirror" import "codemirror/addon/selection/active-line"; 从“codemirror”导入{EditorConfiguration} @types/c

我正在做一个用CreateReact应用程序(没有弹出)构建的项目,我已经安装了codemirror和模块

类型的设置方式是,它用来扩充类型,以匹配Codemirror如何通过插件添加功能

例如,如果您只是这样做:

import {EditorConfiguration} from "codemirror"
import "codemirror/addon/selection/active-line";
从“codemirror”导入{EditorConfiguration}

@types/codemirr/index.d.ts
中定义的默认
EditorConfiguration
接口没有
styleActiveLine
属性

但如果你这样做:

import {EditorConfiguration} from "codemirror"
import "codemirror/addon/selection/active-line";
@types/code镜像/addon/selection/activeline.d.ts的内容

import * as CodeMirror from "codemirror";

declare module "codemirror" {
    ...
    interface EditorConfiguration {
        styleActiveLine?: StyleActiveLine | boolean;
    }
}
然后接口
EditorConfiguration
将具有
styleActiveLine
属性

所以以上所有的作品,100%,给我留下了深刻的印象。但是,当我尝试导入
@types/codemirr/codemirr comment.d.ts
时,typescript编译器会出现以下错误:

无法解析“project\src\editor组件”中的“codemirror/codemirror注释”

这只发生在模块根目录中的文件上。知道这里发生了什么吗

其他说明:

1) 我还试着用相对路径做一些奇怪的事情,比如把这个文件称为“codemirror/addon/。/codemirror comment”。那似乎不起作用

2) typescript服务器在某些时候确实看到了它,并提供了自动更正功能,但编译器似乎没有看到它。

这是我的配置,以防你好奇:

{
  "compilerOptions": {
    "target": "es5",
    "lib": ["dom", "dom.iterable", "es2016", "esnext"],
    "allowJs": true,
    "skipLibCheck": true,
    "esModuleInterop": true,
    "allowSyntheticDefaultImports": true,
    "strict": true,
    "forceConsistentCasingInFileNames": true,
    "module": "esnext",
    "moduleResolution": "node",
    "resolveJsonModule": true,
    "isolatedModules": true,
    "noEmit": true,
    "jsx": "react",
    "baseUrl": "src"
  },
  "include": ["src"]
}

您是否尝试过使用完整的命名空间/路径

看看我是如何在这里导入Axios的


我希望这对你有用

这对我不适用不幸的是,我认为这与我的打字脚本设置有关?用我的tsconfig.json更新了主要帖子。您有公共github repo可用于疑难解答吗?