- KnockoutJS 教程
- KnockoutJS - 首页
- KnockoutJS - 概述
- KnockoutJS - 环境设置
- KnockoutJS - 应用
- KnockoutJS - MVVM 框架
- KnockoutJS - 可观察对象
- 计算可观察对象
- KnockoutJS - 声明式绑定
- KnockoutJS - 依赖项跟踪
- KnockoutJS - 模板
- KnockoutJS - 组件
- KnockoutJS 资源
- KnockoutJS - 快速指南
- KnockoutJS - 资源
- KnockoutJS - 讨论
KnockoutJS - 应用
KnockoutJS 广泛用于单页面应用程序 - 一个创建的网站,能够通过单个页面加载动态检索所有必要数据,从而减少服务器往返次数。
KnockoutJS 是一个客户端框架。这是一个 JavaScript 库,它使 HTML 与域数据绑定变得非常容易。它实现了名为模型-视图-视图模型 (MVVM) 的模式。可观察对象是 KnockoutJS 的神奇成分。由于可观察属性,所有数据都保持同步。
架构
视图
视图只不过是使用 HTML 元素和 CSS 样式创建的用户界面。
您可以使用 KnockoutJS 将 HTML DOM 元素绑定到数据模型。它使用“data-bind”概念在视图和视图模型之间提供双向数据绑定,这意味着在 UI 中进行的任何更新都会反映在数据模型中,并且在数据模型中进行的任何更改都会反映在 UI 中。可以使用 KnockoutJS 创建自更新的 UI。
视图模型
视图模型是一个 JavaScript 对象,其中包含表示数据的必要属性和函数。视图和视图模型通过 HTML 中使用的声明式 data-bind 概念连接在一起。这使得无需更改视图模型即可轻松更改 HTML。KnockoutJS 通过使用可观察对象来处理它们之间的数据自动刷新。
数据同步是通过首先使用 data-bind 将 DOM 元素绑定到数据模型,然后通过使用可观察对象刷新这两个组件来实现的。由于这种数据同步,依赖项跟踪会自动完成。无需额外编码即可实现它。KnockoutJS 允许在显示和底层数据之间创建直接连接。
您可以创建自己的绑定,称为自定义绑定,用于应用程序特定的行为。这样,Knockout 就可以直接控制您希望如何将数据转换为 HTML。
模型
模型是服务器上的域数据,并在从视图模型发送/接收请求时对其进行操作。
数据可以存储在数据库、cookie 或其他形式的持久存储中。KnockoutJS 不关心它是如何存储的。程序员负责在存储的数据和 KnockoutJS 之间进行通信。
大多数情况下,数据通过 Ajax 调用保存和加载。