#node.js #typescript #express
#node.js #typescript #экспресс
Вопрос:
При использовании node.js с помощью express вы начинаете свой код со следующего —
import express = require('express')
const app = express()
теперь, если я хочу передать переменную app в качестве параметра при использовании typescript, с каким типом ее следует связать?
Я выполнил эту команду —
npm install --save-dev @types/express
Итак, я предполагаю, что у меня есть типы локально, но я не уверен, как импортировать его в свой файл и полагаться на него. Любая помощь?
Ответ №1:
Вы можете импортировать express в typescript, выполнив
import express from 'express';
const app = express();
Теперь, если вы хотите задать тип app
, вам нужно импортировать именованный экспорт из express, что можно сделать с помощью
import express, { Express } from 'express';
let app: Express;
app = express();
Также для правильной работы убедитесь, что ваш tsconfig.json
внешний вид выглядит примерно так
{
"compilerOptions": {
"lib": ["es5", "es6"],
"target": "es5",
"module": "commonjs",
"moduleResolution": "node",
"outDir": "./build",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"esModuleInterop": true,
"sourceMap": true
}
}
Ответ №2:
Нашел его, просмотрев этот пример кода учебника — https://github.com/mwanago/express-typescript/blob/master/src/app.ts
Ответ — использовать express.Application
в качестве типа