Utilizarea Express () cu masina de scris

voturi
4

Vreau să folosesc versiunea cea mai recentă de Expess cu node.js dactilografiat. Cele express.d.ts furnizate de Microsoft în probele pare să fie construit pe o versiune înainte de 3.0.x. În versiunea anterioară ai putea face

var app = express.createServer()

dar după 3.0.x ar trebui să faci:

var app = express();

Express.d.ts nu acceptă această ... l-am găsit un hack în jurul valorii de acest lucru: am adăugat următoarea linie în Express.d.ts:

export function(): any;

În app.tscând vreau pentru a crea obiectul app am face următoarele:

var app = <express.ExpressServer>express();

Aceasta pare a remedia problema, este compilarea fără o eroare, și, de asemenea, am obține sprijin IntelliSense. Totuși, acest lucru este un hack ... Mai întâi de toate de ce nu pot scrie ceva de genul asta?

export function(): ExpressServer;

Este recomandat mod de a rezolva această problemă?

Întrebat 03/10/2012 la 14:56
sursa de către utilizator
În alte limbi...                            


4 răspunsuri

voturi
7

Destul de vechi discuții, dar am fugit în aceeași problemă recent și a constatat că există un nou express.d.tscare acceptă în mod corespunzător Express 3 pe DefinitelyTyped site - ului.

Publicat 14/08/2013 la 03:42
sursa de către utilizator

voturi
2

Ar trebui să fie în măsură să adăugați această declarație funcție ambiantă pentru express.d.tsa obține ceea ce vrei.

declare function express(): ExpressServer;

Publicat 03/10/2012 la 15:09
sursa de către utilizator

voturi
0

dacă declarați în expressacest fel: import * as express from "express", veți primi această eroare în timpul rulării, declarând că în acest fel: const express = require "express", nu va arunca nici o eroare.

De asemenea, nu uitați să declare apptipul de variabilă sau proprietate caexpress.Application

Publicat 01/05/2019 la 14:32
sursa de către utilizator

voturi
-1

Iată un exemplu de proiect - app 4.x Express dactilografiat: https://github.com/czechboy0/Express-4x-Typescript-Sample

Publicat 22/03/2015 la 18:12
sursa de către utilizator

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more