JavaScript/jQuery Scheduler - Array Only

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

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;

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'.

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