Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Select an option

  • Save jrwebdev/b747f01b1a78f3ca376f89af894e1523 to your computer and use it in GitHub Desktop.

Select an option

Save jrwebdev/b747f01b1a78f3ca376f89af894e1523 to your computer and use it in GitHub Desktop.
Angular 1 vs Angular 2 Component Dependency Injection
// Angular 1
import NumberService from './path/to/number-service';
const module = angular.module('myModule', []);
module.service('NumberService', () => NumberService);
module.component('myComponent', {
controller: ['NumberService', function (numberService) {
this.value = numberService.random(1, 100);
},
template: `
<div>{{$ctrl.value}}</div>
`
});
/***************************************************************/
// Angular 2
import {Component, Output, EventEmitter} from '@angular/core';
import NumberService from './path/to/number-service';
@Component({
selector: 'my-component',
providers: [
NumberService
],
template: `
<div>{{value}}</div>
`
})
class MyComponent {
value: number;
constructor (private numberService: NumberService) {
this.value = numberService.randomNumber(1, 100);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment