参考2:https://knockoutjs.com/downloads/index.html
参考3:https://gitee.com/mirrors/knockout
4大特点:
(1)声明式绑定:
(2)自动的UI刷新
(3)依赖的跟踪
(4)模板化
Knockout是微软出品,是MVVM模型领域内的先驱,使用函数偷龙转凤,最短编辑长度算法实现DOM的同步,兼容IE6。
MVVM设计模式的优点
-
低耦合
Model的修改不会影响视图的展现,ViewModel可绑定不同的View,当View变化时Model可以不变,当Model变化时View也可以不变。 -
开发独立性
前端更加专注于界面,后端更加专注于逻辑与数据。 -
重用性
ViewModel可对应多个视图,如PC或手机。 -
测试方便
MVVM
MVVM(Model-View-View Model)是创建用户界面的设计模式,它将UI界面分为3部分:
-
Model
Model用于存储应用程序的数据,其数据表示业务领域的对象和数据操作,它独立于任何界面。使用KO时通常是使用AJAX向服务端请求数据赖读写数据模型Model。 -
ViewModel
纯粹用于描述数据内容和页面操作的数据模型。ViewModel不是UI本身,不具有任何HTML和样式的概念。ViewModel不是持久化的数据模型,它仅仅是用户当前使用的未保存的数据。使用KO时,ViewModel是纯粹的不包含HTML的JS对象,保持ViewModel抽象在使用时可保持简单,因此可更简单的操作管理更简单的行为。 -
View
View表示ViewModel状态的一个可见、互动的UI界面,主要用于显示ViewModel的数据信息、发送用户命令以及在ViewModel发生变化时保持自动更新。
使用KO时,View层主要是HTML文档式声明式的绑定到ViewModel,将其关联起来。另外可利用模板从ViewModel中获取对象动态生成的HTML。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
2023-06-28 Cesium报错:Failed to execute 'texImage2D' on 'WebGLRenderingContext':parameter 9 is not of type 'ArrayBufferView'
2023-06-28 JavaScript中array.reduce()数组方法的四种使用实例
2022-06-28 geotools:There is code leaving shapefile readers unclosed, this might result in file system locks not being cleared. File is: china
2022-06-28 geoserver:wmts服务——影像切片缓存
2021-06-28 sql server查看建表的创建代码?
2021-06-28 sql server创建空间数据表&前端加载不确定数量的多个图层
2021-06-28 Leaflet怎么加载geoserver发布的地图服务呢?