Web Demo Mobile Demo Angular Demo Vue Demo React Demo
源代码
import { Component } from '@angular/core';
import { DataService } from './data.service';

@Component({
	selector: 'app-root',
	template: `
		<h2>DataGrid Sorting</h2>
		<eui-datagrid style="height:250px"
				[virtualScroll]="true"
				[data]="data"
				[total]="total"
				[pageNumber]="pageNumber"
				[pageSize]="pageSize"
				[rowHeight]="rowHeight">
			<eui-grid-column field="inv" title="Inv No" [sortable]="true"></eui-grid-column>
			<eui-grid-column field="name" title="Name" [sortable]="true"></eui-grid-column>
			<eui-grid-column field="amount" title="Amount" align="right" [sortable]="true"></eui-grid-column>
			<eui-grid-column field="price" title="Price" align="right" [sortable]="true"></eui-grid-column>
			<eui-grid-column field="cost" title="Cost" align="right" [sortable]="true"></eui-grid-column>
			<eui-grid-column field="note" title="Note"></eui-grid-column>
		</eui-datagrid>
	`,
	providers: [DataService]
})
export class AppComponent {
	total: number = 1000;
	pageNumber = 1;
	pageSize = 20;
	rowHeight = 28;
	data = [];

	constructor(public dataService: DataService){}

	ngOnInit() {
		this.dataService.getData(this.total).subscribe((data) => {
			this.data = data.rows;
		});
	}
}
import { NgModule } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { BrowserModule } from '@angular/platform-browser';
import { HttpModule } from '@angular/http';
import { EasyUIModule } from 'easyui/easyui/easyui.module';


import { AppComponent }   from './app.component';

@NgModule({
  bootstrap: [
    AppComponent
  ],
  declarations: [
    AppComponent
  ],
  imports: [
    FormsModule,
    BrowserModule,
    HttpModule,
    EasyUIModule
  ]
})
export class AppModule { }

import { Injectable } from '@angular/core';
import { Observable } from 'rxjs/Rx';
import 'rxjs/add/observable/of';

@Injectable()
export class DataService {

	getData(total: number) {
		let data = [];
		for(let i=1; i<=total; i++){
			let amount = Math.floor(Math.random()*1000);
			let price = Math.floor(Math.random()*1000);
			data.push({
				inv: 'Inv No '+i,
				name: 'Name '+i,
				amount: amount,
				price: price,
				cost: amount*price,
				note: 'Note '+i
			});
		}
		return Observable.of({
			total: total,
			rows: data
		});
	}
}
import { enableProdMode } from '@angular/core';
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { AppModule } from './app.module';

enableProdMode();

platformBrowserDynamic().bootstrapModule(AppModule);