我正在使用TS在MarionetteJS上编写项目,我想使用注释来注册路由。 例如:
@Controller
class SomeController {
@RouteMapping("some route")
public SomeMethod() {
//code
}
}
创建类实例时是否有机会调用方法注释?
答案 0 :(得分:4)
不,没有。
查看这篇文章Decorators & metadata reflection in TypeScript。它显示了装饰器如何转换为纯javascript,因此它们被调用。
答案 1 :(得分:0)
我在TypeScript(TypeORM)中使用ORM框架,并且可以使用注释(例如@entity(database:''))设置某些内容。
我可以从.env文件或带有常量的类的批注中接收参数值吗?
我尝试过:
@entity(database: process.env.DATA_BASE_NAME)
class UserEntity {...}
没有成功= / 因为此时我的.env还没有实例化= /
但是效果很好:
@entity(database: 'Users')
class UserEntity {
dotenv.config();
@(column: process.env.TABLE_USER_COL_ID_NAME, ...)
private id: number;
}
解决该问题的提示?
答案 2 :(得分:0)
我正在使用typescript-rest
它允许使用注释配置服务,并在需要时生成Swagger文件