Je travaille sur l'application nodejs dans TypeScript dans laquelle j'ai écrit un fichier server.js comme suit:
import express = require('express');
import mongoose = require('mongoose');
let app=express();
app.set('port', process.env.PORT || 3000); // Set port to 3000 or the provided PORT variable
/**
* Start app
*/
app.listen(app.get('port'), function() {
console.log(`App listening on port ${app.get('port')}!`);
});
j'ai utilisé le gulp pour traspile qui génère un fichier js comme
define(["require", "exports", 'express'], function (require, exports, express) {
var app = express();
app.set('port', process.env.PORT || 3000); // Set port to 3000 or the provided PORT variable
/**
* Start app
*/
app.listen(app.get('port'), function () {
console.log("App listening on port " + app.get('port') + "!");
});
});
//# sourceMappingURL=../map/server.js.map
mais quand j'exécute ce fichier je reçois une erreur qui n'est pas définie.
S'il vous plaît corrigez-moi si je fais une erreur.
Si vous écrivez une application qui fonctionnera uniquement dans Node.js, vous devriez utiliser des modules "commonjs", et non des modules AMD, lorsque vous compilez vos fichiers TypeScript.
Si vous écrivez une application qui s'exécutera à la fois dans Node.js et dans le navigateur, vous devriez utiliser des modules "umd", et non des modules AMD, lorsque vous compilez vos fichiers TypeScript.
Vous devez donc modifier l'objet de configuration que vous transmettez au compilateur Gulp TypeScript afin qu'il utilise { module: "commonjs" }
ou { module: "umd" }
.
Je suppose que vous avez besoin d’un AMD-loader
ici, une fois installé, vous pouvez alors require("AMD-loader");
dans votre projet.
npm install AMD-loader
require("AMD-loader");
Ci-dessous le lien: