DevExtreme Angular - OData Service
Use the ODataStore to bind the TreeList to data an OData service supplies. It provides an interface for loading and editing data and allows you to handle data-related events.
jQuery
JavaScript
$(function() {
$("#treeListContainer").dxTreeList({
dataSource: new DevExpress.data.ODataStore({
url: "https://examples.com/odata/Products",
key: "Product_ID",
onLoaded: function () {
// Event handling commands go here
}
})
});
});Angular
TypeScript
HTML
import { DxTreeListModule } from "devextreme-angular";
import ODataStore from "devextreme/data/odata/store";
// ...
export class AppComponent {
productStore = new ODataStore({
url: "https://examples.com/odata/Products",
key: "Product_ID",
onLoaded: function () {
// Event handling commands go here
}
});
}
@NgModule({
imports: [
// ...
DxTreeListModule
],
// ...
})<dx-tree-list
[dataSource]="productStore">
</dx-tree-list>Data kept in the ODataStore can be processed in the DataSource, for example, it can filter data.
jQuery
JavaScript
$(function() {
$("#treeListContainer").dxTreeList({
dataSource: new DevExpress.data.DataSource({
store: {
type: "odata",
url: "https://examples.com/odata/Products",
key: "Product_ID"
},
filter: ["Product_Available", "=", true]
})
});
});Angular
TypeScript
HTML
import { DxTreeListModule } from "devextreme-angular";
import "devextreme/data/odata/store";
import DataSource from "devextreme/data/data_source";
// ...
export class AppComponent {
productDataSource = new DataSource({
store: {
type: "odata",
url: "https://examples.com/odata/Products",
key: "Product_ID"
},
filter: ["Product_Available", "=", true]
});
}
@NgModule({
imports: [
// ...
DxTreeListModule
],
// ...
})<dx-tree-list
[dataSource]="productDataSource">
</dx-tree-list>NOTE
Setting the ODataStore's deserializeDates option to false may cause filtering issues in the TreeList. See this option's description for details.
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.