在Typescript中使用导入时无法访问命名空间或类

时间:2016-12-30 03:27:35

标签: typescript

这是file-app.ts中的代码

  import Express = require('express');
  import FileSystem = require('fs');
  import Http = require('http');

module Service {
    export interface Configuration {
        Port: number,
        Host: string
    }
    export class AppServer {
        App: Express.Application;
        AppServer: Http.Server;

        constructor() {
            this.App = Express();
            this.App.use(this.App.route);
            // this.App.use(this.App.router);

        }

        /**
         * Start the server
         * @param {Configuration} config
         */
        StartServer = function (config: Configuration) {
            var That = this;
            this.AppServer = this.App.listen(config.Port, function () {

                var Host = That.AppServer.address().address;
                var Port = That.AppServer.address().port;

                console.log("Example app listening at http://%s:%s", Host, Port)

            })
        }
    }
}

当我访问另一个文件中的命名空间时,我收到的编译错误是“#34;无法找到服务"。

这是文件-server.ts中的代码

/// <reference path="App.ts" />

var Server = new Service.AppServer();
var Config = <Service.Configuration>{
    Port: 3000
}
Server.StartServer(Config);

但是当我删除需要http和express的import语句时,我不再在文件中收到错误。 请帮我找到我做错的地方?

我得到的错误是 - &#39; ts2304&#39;找不到姓名&#39; service&#39;。

1 个答案:

答案 0 :(得分:2)

好像你没有导出模块。尝试在文件末尾添加export {Service}