【发布时间】:2016-03-17 23:25:47
【问题描述】:
我正在尝试从 Typescript 类加载 ExpressJS 路由。这个想法是这最终应该是动态路由。但是我已经被困在一个类中定义硬编码的路线了。
我的index.ts js 是这样的:
import generic = require('./generic');
import Generic = generic.Generic;
class Test {
private app:any;
private port:number = 3000;
constructor() {
this.app = express();
new Generic();
this.app.listen(this.port, () => {
console.log('Listening on port ' + this.port);
});
}
}
export = Test;
new Test();
然后我的generic.ts 看起来像这样。我正在尝试从此类定义另一条路线:
module Generic {
export class Generic {
constructor() {
console.log('In generic');
var router:any = express.Router();
router.get('/', function (req, res) {
res.setHeader('Content-Type', 'application/json');
res.status(200).send("AAA");
});
}
}
}
export = Generic;
当我运行我的应用程序时,我看到消息 In generic 出现在控制台中。但是当我加载浏览器时,它会说:
Cannot GET /
所以由于某种原因,它并没有真正从Generic 类注册路由。我做错了什么?
【问题讨论】:
标签: node.js express typescript