Skip to content

Instantly share code, notes, and snippets.

@learningjs
Forked from msfrisbie/gist:23ed5df17ce8eaf506a7
Last active August 29, 2015 14:12
Show Gist options
  • Save learningjs/11475d41c416b167b8f8 to your computer and use it in GitHub Desktop.
Save learningjs/11475d41c416b167b8f8 to your computer and use it in GitHub Desktop.
// AtScript
import {Component} from 'angular';
import {Server} from './server';
@Component({selector: 'foo'})
export class MyComponent {
constructor(server:Server) {
this.server = server;
}
}
// ES6
import * as rtts from 'rtts';
import {Component} from 'angular';
import {Server} from './server';
export class MyComponent {
constructor(server) {
rtts.types(server, Server);
this.server = server;
}
}
// new Dependency Injection!!!
MyComponent.parameters = [{is:Server}];
MyComponent.annotate = [
new Component({selector: 'foo'})
];
// Annotations
// transpiled ES5
MyComponent.annotate = [new Inject(Server)];
// Control of instance reuse
// Singleton (same class for each injecion)
export class FooClass {}
// Create new class for each injection
@TransientScope
export class FooClass {}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment