Angular Scheduler - Array Only
To bind the Scheduler to an array, pass this array to the dataSource property.
jQuery
JavaScript
var appointments = [{ text: 'Meet with a customer', startDate: new Date("2016-04-25T01:30:00.000Z"), endDate: new Date("2016-04-25T03:30:00.000Z") }, { text: 'Discuss results', startDate: new Date("2016-04-25T09:00:00.000Z"), endDate: new Date("2016-04-25T10:00:00.000Z") }, // ... ]; $(function(){ $("#schedulerContainer").dxScheduler({ dataSource: appointments }); });
Angular
TypeScript
HTML
import { DxSchedulerModule } from "devextreme-angular"; // ... export class AppComponent { appointments = [{ text: "Meet with a customer", startDate: new Date("2016-04-25T01:30:00.000Z"), endDate: new Date("2016-04-25T03:30:00.000Z") }, { text: "Discuss results", startDate: new Date("2016-04-25T09:00:00.000Z"), endDate: new Date("2016-04-25T10:00:00.000Z") }]; } @NgModule({ imports: [ // ... DxSchedulerModule ], // ... })
<dx-scheduler [dataSource]="appointments"> </dx-scheduler>
Vue
App.vue
<template> <DxScheduler :data-source="appointments" :current-date="currentDate" /> </template> <script> import 'devextreme/dist/css/dx.common.css'; import 'devextreme/dist/css/dx.light.css'; import DxScheduler from 'devextreme-vue/scheduler'; export default { components: { DxScheduler }, data() { return { currentDate: new Date(2016, 4, 25), appointments: [{ text: 'Meet with a customer', startDate: new Date("2016-04-25T01:30:00.000Z"), endDate: new Date("2016-04-25T03:30:00.000Z") }, { text: 'Discuss results', startDate: new Date("2016-04-25T09:00:00.000Z"), endDate: new Date("2016-04-25T10:00:00.000Z") }, // ... ]; } } } </script>
React
App.js
import React from 'react'; import 'devextreme/dist/css/dx.common.css'; import 'devextreme/dist/css/dx.light.css'; import Scheduler from 'devextreme-react/scheduler'; const appointments = [{ text: 'Meet with a customer', startDate: new Date("2016-04-25T01:30:00.000Z"), endDate: new Date("2016-04-25T03:30:00.000Z") }, { text: 'Discuss results', startDate: new Date("2016-04-25T09:00:00.000Z"), endDate: new Date("2016-04-25T10:00:00.000Z") }, // ... ]; class App extends React.Component { render() { return ( <Scheduler dataSource={appointments} defaultCurrentDate={new Date(2016, 4, 25)} /> ); } } export default App;
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'.
jQuery
JavaScript
var appointments = [{ text: 'Meet with a customer', startDate: new Date("2016-04-10T11:00:00.000Z"), endDate: new Date("2016-04-10T13:00:00.000Z") }, // ... ]; $(function(){ $("#schedulerContainer").dxScheduler({ dataSource: DevExpress.data.query(appointments) .filter("text", "contains", "meet") .toArray() }); });
Angular
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-04-10T11:00:00.000Z"), endDate: new Date("2016-04-10T13:00:00.000Z") }, // ... ]; getFilteredEmployees () { return query(this.appointments).filter("text", "contains", "meet").toArray(); } } @NgModule({ imports: [ // ... DxSchedulerModule ], // ... })
<dx-scheduler [dataSource]="getFilteredEmployees()"> </dx-scheduler>
Vue
App.vue
<template> <DxScheduler :data-source="dataSource" :current-date="currentDate" /> </template> <script> import 'devextreme/dist/css/dx.common.css'; import 'devextreme/dist/css/dx.light.css'; import DxScheduler from 'devextreme-vue/scheduler'; import Query from 'devextreme/data/query'; const appointments = [{ text: 'Meet with a customer', startDate: new Date("2016-04-10T11:00:00.000Z"), endDate: new Date("2016-04-10T13:00:00.000Z") }, // ... ]; const dataSource = Query(appointments).filter("text", "contains", "meet").toArray(); export default { components: { DxScheduler }, data() { return { currentDate: new Date(2016, 4, 10), dataSource } } } </script>
React
App.js
import React from 'react'; import 'devextreme/dist/css/dx.common.css'; import 'devextreme/dist/css/dx.light.css'; import Scheduler from 'devextreme-react/scheduler'; import Query from 'devextreme/data/query'; const appointments = [{ text: 'Meet with a customer', startDate: new Date("2016-04-10T11:00:00.000Z"), endDate: new Date("2016-04-10T13:00:00.000Z") }, // ... ]; const dataSource = Query(appointments).filter("text", "contains", "meet").toArray(); class App extends React.Component { render() { return ( <Scheduler dataSource={dataSource} defaultCurrentDate={new Date(2016, 4, 10)} /> ); } } export default App;
See Also
Feel free to share topic-related thoughts here.
If you have technical questions, please create a support ticket in the DevExpress Support Center.
Thank you for the feedback!
If you have technical questions, please create a support ticket in the DevExpress Support Center.