import { Injectable } from '@angular/core';
// Common data service
@Injectable()
export class DataSvc {
getData(): any[] {
var data = [],
countries = 'US,Germany,UK,Japan,Italy,Greece'.split(',');
// populate itemsSource
for (var i = 0; i < countries.length; i++) {
data.push({
country: countries[i],
downloads: Math.ceil(Math.random() * 80) + 20,
sales: Math.ceil(Math.random() * 80) + 20
});
}
return data;
}
}
--------------------Component-----------------------
// Angular
import * as wjcChartRadar from 'wijmo/wijmo.chart.radar';
import * as wjcInput from 'wijmo/wijmo.input';
import { Component, EventEmitter, Input, Inject, enableProdMode, ViewChild, NgModule } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { CommonModule } from '@angular/common';
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { BrowserModule } from '@angular/platform-browser';
import { WjChartModule } from 'wijmo/wijmo.angular2.chart';
import { WjChartRadarModule } from 'wijmo/wijmo.angular2.chart.radar';
import { WjChartAnimationModule } from 'wijmo/wijmo.angular2.chart.animation';
import { WjInputModule } from 'wijmo/wijmo.angular2.input';
import { TabsModule } from './components/AppTab';
import { DataSvc } from './services/DataSvc';
// The Explorer application root component.
@Component({
selector: 'app-cmp',
templateUrl: 'src/app.html'
})
export class AppCmp {
// generate some random data
basicData: any[];
protected dataSvc: DataSvc;
constructor( @Inject(DataSvc) dataSvc: DataSvc) {
this.dataSvc = dataSvc;
this.basicData = this.dataSvc.getData();
}
}
@NgModule({
imports: [WjInputModule, WjChartModule, WjChartRadarModule, WjChartAnimationModule, BrowserModule, FormsModule, TabsModule],
declarations: [AppCmp],
providers: [DataSvc],
bootstrap: [AppCmp]
})
export class AppModule {
}
enableProdMode();
// Bootstrap application with hash style navigation and global services.
platformBrowserDynamic().bootstrapModule(AppModule);