Met behulp van Express () met typoscript

stemmen
4

Ik wil de meest recente versie van Expess te gebruiken met node.js de schrijfmachine. De express.d.ts van Microsoft in de monsters lijkt vooraf worden gevormd door een versies 3.0.x. In de vorige versie die u zou kunnen doen

var app = express.createServer()

maar na 3.0.x je moet doen:

var app = express();

Express.d.ts ondersteunt dit niet ... Ik heb een hack gevonden rond deze: Ik heb de volgende regel toegevoegd aan Express.d.ts:

export function(): any;

In app.tswanneer ik wil de app object dat ik doe het volgende te maken:

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

Dit lijkt het probleem op te lossen, is het compileren zonder een fout, en ook krijg ik intellisense ondersteuning. Dit is echter een hack ... Allereerst waarom kan ik zoiets als dit niet schrijven?

export function(): ExpressServer;

Is dit de beste manier om dit probleem op te lossen?

De vraag is gesteld op 03/10/2012 om 14:56
bron van user
In andere talen...                            


4 antwoorden

stemmen
7

Mooie oude discussie, maar ik liep in het zelfde probleem onlangs en vonden dat er een nieuw express.d.tsdie goed ondersteunt express 3 op de DefinitelyTyped terrein.

antwoordde op 14/08/2013 om 03:42
bron van user

stemmen
2

Je moet in staat zijn om dit ambient functie verklaring toe te voegen aan express.d.tsom te krijgen wat je wilt.

declare function express(): ExpressServer;

antwoordde op 03/10/2012 om 15:09
bron van user

stemmen
0

Als u verklaart expressop deze manier: import * as express from "express"vindt u deze fout in runtime, verklaart het als volgt: const express = require "express", zal geen enkele fout te gooien.

Ook, vergeet dan niet te verklaren appvariabele of eigenschap type alsexpress.Application

antwoordde op 01/05/2019 om 14:32
bron van user

stemmen
-1

Hier is een voorbeeld project - Express 4.x app met een schrijfmachine: https://github.com/czechboy0/Express-4x-Typescript-Sample

antwoordde op 22/03/2015 om 18:12
bron van user

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