When using apollo-server with Typescript, the following error is produced:
node_modules/apollo-server/dist/index.d.ts:2:8 - error TS1192: Module '"http"' has no default export.
2 import http from 'http';
~~~~
error Command failed with exit code 2.
Version
"apollo-server": "2.0.0-rc.0"
"typescript": "2.9.2"
tsconfig
{
"compilerOptions": {
"target": "es2017",
"module": "commonjs",
"moduleResolution": "node",
"lib": ["es2017", "esnext.asynciterable"],
"outDir": "./build"
},
"include": ["src/**/*.ts"],
"exclude": ["node_modules"]
}
The same seems to be true for the following:
node_modules/apollo-server-core/dist/types.d.ts:4:8 - error TS1192: Module '"node_modules/@types/ws/index"' has no default export.
4 import WebSocket from 'ws';
~~~~~~~~~
node_modules/apollo-server-express/dist/ApolloServer.d.ts:1:8 - error TS1192: Module '"node_modules/@types/express/index"' has no default export.
1 import express from 'express';
~~~~~~~
node_modules/apollo-server-express/dist/ApolloServer.d.ts:2:8 - error TS1192: Module '"node_modules/@types/cors/index"' has no default export.
2 import corsMiddleware from 'cors';
~~~~~~~~~~~~~~
This can be fixed by setting esModuleInterop: true. We have a longer discussion on #1182
Thanks @evans ! That worked.
Most helpful comment
This can be fixed by setting
esModuleInterop: true. We have a longer discussion on #1182