Angular 2 ES5 Play

HTML

<script src="https://code.angularjs.org/2.0.0-alpha.44/angular2.sfx.dev.js"></script>
<hello-app></hello-app>

JavaScript

var names = ['Joe'];

setTimeout(function() {
  names.push("Frank");
}, 1000);

setTimeout(function() {
  names.push("Sterve");
}, 2000);

setTimeout(function() {
  names.push("Garfield");
}, 3000);

(function() {
  var HelloApp,
		ListThing;

	ListThing = ng
		.Component({
			selector: 'list-thing',
			template: '<ul><li *ng-for="#name of names">{{name}}</li></ul>',
			directives: [ng.NgFor]
		})
		.Class({
			constructor: function() {
				this.names = window.names;
        
        setTimeout(function() {
					this.names.push("Oh hai");
				}.bind(this), 10000);
			}
		});
    
	HelloApp = ng
		.Component({
			selector: 'hello-app',
			template: '<list-thing></list-thing>',
			directives: [ListThing]
		})
		.Class({
			constructor: function() {}
		});

	document.addEventListener('DOMContentLoaded', function() {
		ng.bootstrap(HelloApp);
	});
}());