javascript - skriv node.js-server med typescript


Jag vill skapa en Node.js-server med TypeScript

///<reference path="definitions/node.d.ts" />
///<reference path="core/p_routing.ts" />

class server{
    private _port = 1337;
    private _host = '127.0.0.1';

    constructor(){
        require("node-ts");

        var http = require('http');

        http.createServer(function (req, res) {
            new pMVC.p_routing(req, res);
        }).listen(this._port, this._host);
        console.log('Server running at http://127.0.0.1:1337/');
    }
}

var serverw = new server();

detta är min server.js

module pMVC {
    export class p_routing {
        private _url:string[];
        private _defaultController:string = 'home';
        private _defaultMethod:string = 'index';
        private _fs = null;

        public constructor(request, response) {
            response.writeHead(200, {'Content-Type': 'text/plain'});
            response.end('Hello World\n');
        }
    }
}

detta är min routningsklass. (kommer att vara routningsklass)

Jag har inga fel i redigeraren, men när jag försöker besöka webbplatsen kraschar servern och jag får följande fel:

Svar #1

I avsaknad av någon root-nivå import/export antar TypeScript-kompilatorn att allt är i ett globalt namnrymd.

Detta är inte sant i Node.js-runtime och du bör använda commonsjs-moduler med import/require-nyckelorden. Mer: https://www.youtube.com/watch?v=KDrWLMUY0R0&hd=1

PS: Jag rekommenderar att använda externa moduler även för icke-Node.js-projekt: https://github.com/TypeStrong/atom-typescript/blob/master/docs/out.md