DevExtreme Angular - Array Only

To bind the Scheduler to an array, pass this array to the dataSource option.

TypeScript
HTML
  • import { DxSchedulerModule } from "devextreme-angular";
  • // ...
  • export class AppComponent {
  • appointments = [{
  • text: "Meet with a customer",
  • startDate: new Date(2016, 4, 25, 1, 30),
  • endDate: new Date(2016, 4, 25, 3, 30)
  • }, {
  • text: "Discuss results",
  • startDate: new Date(2016, 4, 25, 9, 0),
  • endDate: new Date(2016, 4, 25, 10, 0)
  • }];
  • }
  • @NgModule({
  • imports: [
  • // ...
  • DxSchedulerModule
  • ],
  • // ...
  • })
  • <dx-scheduler
  • [dataSource]="appointments">
  • </dx-scheduler>

View Demo

If objects in the array need to be processed (for example, filtered), you can create a Query. In the following code, a Query selects objects with text containing 'meet'.

TypeScript
HTML
  • import { DxSchedulerModule } from "devextreme-angular";
  • import query from "devextreme/data/query";
  • // ...
  • export class AppComponent {
  • appointments = [{
  • text: 'Meet with a customer',
  • startDate: new Date(2016, 4, 10, 11, 0),
  • endDate: new Date(2016, 4, 10, 13, 0)
  • },
  • // ...
  • ];
  • getFilteredEmployees () {
  • return query(this.appointments).filter("text", "contains", "meet").toArray();
  • }
  • }
  • @NgModule({
  • imports: [
  • // ...
  • DxSchedulerModule
  • ],
  • // ...
  • })
  • <dx-scheduler
  • [dataSource]="getFilteredEmployees()">
  • </dx-scheduler>
See Also