Reactjs 导入的react node_模块中存在Typescript编译错误,即使它是';不包括在tsconfig.json中

Reactjs 导入的react node_模块中存在Typescript编译错误,即使它是';不包括在tsconfig.json中,reactjs,typescript,webpack,ts-loader,Reactjs,Typescript,Webpack,Ts Loader,我一直在玩得很开心,试图看看我是否能让我的typescript构建忽略node_模块(特别是React)。我的tsconfig.json告诉它忽略该文件夹,但它仍在编译中,我不知道为什么。我怀疑可能是因为它是由包含的文件中的一个文件导入的,也许 下面是一个错误示例,其中有许多错误: ERROR in /Users/rw3iss/Sites/site/src/project/public/node_modules/@types/react/index.d.ts (3606,13): error T

我一直在玩得很开心,试图看看我是否能让我的typescript构建忽略node_模块(特别是React)。我的tsconfig.json告诉它忽略该文件夹,但它仍在编译中,我不知道为什么。我怀疑可能是因为它是由包含的文件中的一个文件导入的,也许

下面是一个错误示例,其中有许多错误:

ERROR in /Users/rw3iss/Sites/site/src/project/public/node_modules/@types/react/index.d.ts
(3606,13): error TS2403: Subsequent variable declarations must have the same type.  Variable 'feTile' must be of type 'SVGProps<SVGFETileElement>', but here has type 'SVGProps<SVGFETileElement>'.
我正在尝试使用webpack/ts loader编译它,我的webpack配置为:

var webpack = require('webpack');
var path = require('path');

var BUILD_DIR = path.resolve(__dirname, 'build');
var APP_DIR = path.resolve(__dirname, 'src');

var config = {

    entry: {
        app: [
            APP_DIR + '/react_src/Secure.tsx',
            APP_DIR + '/react_src/DicomViewer.tsx'
        ]
    },

    output: {
        publicPath: '/',
        path: BUILD_DIR, // 'dist'
        filename: '[name].js', // 'index.js'
        //libraryTarget: 'umd'
    },

    resolve: {
        extensions: ['.js', '.jsx', '.ts', '.tsx'],
        modules: [ 'node_modules', 'src' ]
    },

    module: {
        rules: [
            { 
                test: /\.(t|j)sx?$/, 
                include: APP_DIR,
                exclude: [
                        path.resolve(__dirname, 'node_modules'),
                        '../public/node_modules',
                        '../node_modules'
                    ],
                loader: ['ts-loader']
            }
        ]
    }
};

module.exports = config;
有谁能告诉我为什么会发生这些错误,以及可能如何避免这些错误以及导入的node_模块中可能出现的其他错误

更新: 我删除了“typeRoots”下的所有内容,并将“types”设置为[]:

"typeRoots": [],
"types": []
但它仍然抛出同样的错误。我只是想弄明白为什么

我无法让我的typescript构建忽略node_模块(特别是React)。我的tsconfig.json告诉它忽略该文件夹,但它仍在编译中,我不知道为什么

该错误与
@types
目录中的react类型声明有关。即使我们排除了
node\u模块
,编译中也包括
@types
目录

下面是一些进一步的例子:

默认情况下,编译中包含所有可见的“@types”包。。。如果指定了typesRoots,则仅包括typeRoots下的包。。。如果指定了类型,则只包括列出的包

您的tsconfig包括一个
types
属性,该属性指定
[“react”]
。将
types
属性更改为空数组
[]
可以解决此错误。请注意,
类型
属于
编译器选项
而不属于顶层


另请参见

你好,肖恩,谢谢。我确实试过了,但没有用。我删除了typeRoots中的所有内容,同时删除了所有类型,但仍然抛出相同的错误。我在上面的描述中添加了这个。
"typeRoots": [],
"types": []