How to install express in typings?

2020-06-01 05:32发布

I am trying to use expressjs in my app.

After installing it using typings install express --ambient --save, I run tsc, but I get two errors:

typings/main/ambient/express/index.d.ts(17,34): error TS2307: Cannot find module 'serve-static'. typings/main/ambient/express/index.d.ts(18,27): error TS2307: Cannot find module 'express-serve-static-core'.

So, I tried to install both:

typings install serve-static --ambient --save
typings install express-serve-static --ambient --save

and then I run tsc again, but get one more error:

typings/main/ambient/serve-static/index.d.ts(79,24): error TS2307: Cannot find module 'mime'.

How can I solve these problems? How can I install all dependencies of express automatically?

5条回答
劳资没心,怎么记你
2楼-- · 2020-06-01 05:40
{
  "globalDependencies": {
    "express": "registry:dt/express#4.0.0+20160708185218",
    "express-serve-static-core": "registry:dt/express-serve-static-core#4.0.0+20160715232503",
    "mime": "registry:dt/mime#0.0.0+20160316155526",
    "node": "registry:dt/node#6.0.0+20160621231320",
    "serve-static": "registry:dt/serve-static#0.0.0+20160606155157"
  }
}

This is my working Typings.json

查看更多
▲ chillily
3楼-- · 2020-06-01 05:43

With Typescript 2.0(https://blogs.msdn.microsoft.com/typescript/2016/09/22/announcing-typescript-2-0/), now it is different:

If you install typescript with the following command:

npm install -g typescript@2.0

You will have to install express typings with command

npm install --save @types/express

Instead of typings getting installed with ambient/global like in earlier releases. The typings get installed in node_modules/@types/express directory

Your package.json will have the following fragment after doing npm install of types :

"dependencies": {
    "@types/express": "^4.0.33"
  }
查看更多
\"骚年 ilove
4楼-- · 2020-06-01 05:43

I'v run into this issue myself and found out you also have to have the actual nodeJS module installed as well as its typing.

So when you have correclty configured typescript and your project, you need ot install both the nodeJS dependency as well as the @types dependecy.

npm install express --save

npm install --save @types/express

查看更多
对你真心纯属浪费
5楼-- · 2020-06-01 05:51

I just ran into this myself and I believe is a duplicate from :

Importing node and express with typings in TypeScript

I installed both serve-static and express-serve-static then got errors stating that I was missing 'mime' and 'http'.

I had to install node typings to resolve the missing http reference and mime typings to resolve mime missing reference.

typings install mime --ambient --save
typings install node --ambient --save
查看更多
干净又极端
6楼-- · 2020-06-01 05:52

The command that worked for me (the day I posted) was : typings install dt~express --global --save (ambient was replaced by global)

To find other related module you can use the command typings search express (it also give you the source info)

查看更多
登录 后发表回答