答案 0 :(得分:13)
本周的重大新闻是AtScript和TypeScript的合并。
AtScript文档中的以下示例...
@Component()
class MyApp {
server:Server;
@Bind('name') name:string;
@Event('foo') fooFn:Function;
@Inject()
constructor(@parent server:Server) {}
greet():string {}
}
编译成以下JavaScript ...
function MyApp() {}
MyApp.properties = {
'server': { is: Server },
'name': { is:string,
annotate: [new Bind('name']},
'fooFn': { is:Function,
annotate:[new Event('foo')]}
}
MyApp.annotate = [
new Component(),
new Inject()
];
MyApp.parameters = [
{is:Server, annotate:[parent]}
];
MyApp.prototype.greet = function() {}
MyApp.prototype.greet.returns = string;
AtScript计划在TypeScript之上(即超集的超集) - 但现在是two projects are one。
Annotations are described thus:
注释只能放在函数上。
放在类上的注释是放在类'构造函数上的注释。
放置在字段上的注释会移动到构造函数。
所有注释都被翻译为函数的属性。