node_modules / @类型中的Webpack ts-loader错误

时间:2017-06-11 19:24:45

标签: typescript webpack ts-loader

我的项目编译得很好,但是如果我在新目录中结帐并尝试npm install然后webpack,我会收到以下错误:

ERROR in /home/nobody/myproject/server/node_modules/@types/mongodb/index.d.ts
(500,12): error TS1005: ',' expected.

ERROR in /home/nobody/myproject/server/node_modules/@types/mongodb/index.d.ts
(502,12): error TS1005: ',' expected.

ERROR in /home/nobody/myproject/server/node_modules/@types/mongodb/index.d.ts
(504,15): error TS1005: ',' expected.

ERROR in /home/nobody/myproject/server/node_modules/@types/mongodb/index.d.ts
(505,15): error TS1005: ',' expected.

ERROR in /home/nobody/myproject/server/node_modules/@types/mongodb/index.d.ts
(506,15): error TS1005: ',' expected.

ERROR in /home/nobody/myproject/server/node_modules/@types/mongodb/index.d.ts
(1002,23): error TS1005: ',' expected.

以及同一文件中的大约25个其他错误,以及某些源文件中的其他错误。

在我的tsconfig.json我排除了node_modules,我还设置了webpack externals,用于打包node_modules并使用节点快速后端:

var nodeModules = {};
fs.readdirSync('node_modules')
    .filter(function (x) {
        return ['.bin'].indexOf(x) === -1;
    })
    .forEach(function (mod) {
        nodeModules[mod] = 'commonjs ' + mod;
    });

我真正得到的不是为什么我的开发目录中的一切正常,但是如果我把它放在另一个目录中,它会中断。

1 个答案:

答案 0 :(得分:1)

您使用的是什么版本的TypeScript? The current version of Mongo's .d.ts文件使用默认类型参数启动,这些参数在TypeScript 2.3中发布。文件中还有20多个默认类型参数,听起来就像你看到的解析错误的数量。

简而言之,您可能只需要升级到TypeScript 2.3。