根据我从文档中的理解,kendo.data.Model 继承自 ObservableObject。
1- 这是否意味着我可以创建一个新模型并使其成为 MVVM 方面的“视图模型”?或者我应该从 ObservableObject 显式创建一个视图模型?
2- 在数据源 schema.model 中。为什么要在 DataSource 架构上定义模型?它在哪里使用?schema.model 是否用于跟踪记录的添加/删除/更新?从服务器加载数据时它有什么作用吗?
1. 是的,你可以。请检查以下示例:
<input data-bind="value: name" /> <input data-bind="value: age" /> <script> var Person = kendo.data.Model.define( { id: "personId", // the identifier of the model(模型的标识符) fields: { "name": { type: "string" }, "age": { type: "number" } } }); var person = new Person( { name: "John Doe", age: 42 }); kendo.bind($(document.body), person); </script>
2.模型用于描述记录字段并定义模型ID。其他 Kendo UI 组件(例如 DataSource、Grid 等)正在使用诸如 type、editable、defaultValue、validation 之类的字段配置。例如,字段类型“告诉”数据源将传入的 JSON 值解析为数字或 JavaScript 日期目的。它还“告诉”网格要呈现哪种类型的编辑器以及要显示哪些过滤器操作符。
schema.model 是否用于跟踪记录的添加/删除/更新?
是的,ID 字段在跟踪添加/删除的记录方面起主要作用。
从服务器加载数据时它有什么作用吗?
是的,它用于描述传入 JSON 数据应在客户端解析的方式。
https://www.telerik.com/forums/what-is-kendo-data-model