位置: 编程技术 - 正文

认识Knockout及如何使用Knockout绑定上下文(认识iu)

编辑:rootadmin

推荐整理分享认识Knockout及如何使用Knockout绑定上下文(认识iu),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:认识克课件,认识iu,认识iu,认识ue,认识ei,认识ue,认识ue,认识克教案,内容如对您有帮助,希望把文章链接给更多的朋友!

Knockout介绍

Knockout简称ko,是一个轻量级的javascript类库,采用MVVM设计模式(即Model、view、viewModel),简单优雅的实现了双向绑定,实时更新,帮助您使用干净的数据模型来创建丰富的、响应式的用户界面。

Knockout有三大核心特性:

1.优雅的依赖跟踪(Elegant dependency tracking):任何时候数据模型的变化都会自动更新相应的UI部分;

2.声明式绑定(Declarative bindings) : 简单的将UI和你的数据模型关联起来,你就可以创建复杂的动态UI;

3.高度可扩展性(Trivially extensible) : 只需几行代码实现一个自定义的行为来作为声明式绑定;

其他优点:

1.纯净的javascript代码;

2.可以随时添加到你现有的web应用中;

3.轻量级,GZIP后只有K;

4.能够工作于几乎所有主流浏览器((IE 6+, Firefox 2+, Chrome, Safari, Edge, others);

ko采用的是MVVM设计模式,即model view viewModel。

简单的例子

就是这么简单,你不必写代码来更新text内容,它会在数组长度改变时自动更新,与此类似,如果我们想利用数组长度控制按钮的可用性仅仅需要:

下面接着给大家介绍使用Knockout绑定上下文

Binding context

binding context是一个保存数据的对象,你可以在你的绑定中引用它。当应用绑定的时候,knockout自动创建和管理binding context的继承关系。这种层次结构的根引用你指定的viewModel参数(ko.applyBindings(viewModel))。

然后每次使用一个控制流如with或者foreach 来创建一个子节点binding context引用嵌套的viewModel data。

认识Knockout及如何使用Knockout绑定上下文(认识iu)

$parent

$parents

这是一个数组,代表了所有的父节点view models

$parent[0] : 代表父节点;

$parent[1] : 代表祖父节点;

$parent[1] : 代表曾祖父节点;

.....以此类推

$root

它是root context的根节点视图模型对象,一般是通过ko.applyBindings指定的,相当于$parents[$parents.length - 1]。

$component

如果你在一个特定的组件模板的上下文中,$component指定的是那个component,它的指定组件相当于$root,在嵌套的组件情况下,它代表了最邻近的一个组件。

$data

它代表了当前上下文中的viewModel对象,$data和$root是相当的。在嵌套的binding context中,这个参数将设置到当前的数据项。

$data是非常有用的,例如,当你想引用viewModel本身而不是viewModel的属性的时候。

它是一个在foreach绑定中的数组的从0开始的索引条目。不想其他的context属性,$index是observable的,即会随着数组item的更新而更新。

$parentContext

指定了父节点级别的binding context对象,与$parent不同的是,它是在父节点中指定数据而不是binding context。

$rowData

它是在当前上下文中,原viewModel的值,通常它相当于$data,但是,如果viewModel被ko以observable来修饰,$data是unobservable的,而$rowData是observable的。

如何解决easyui自定义标签 datagrid edit combobox 手动输入保存不上 使用onEndEdit事件(该事件可以获取到editor对象,onAfterEdit事件获取不到Editor对象)通过editor拿到输入数据并保存。intci=0;for(Columncol:columnList){for(Comboboxcbb:c

JS插件overlib用法实例详解 本文实例讲述了overlib用法。分享给大家供大家参考,具体如下:overLIB是一个生成提示框与弹出菜单等页面效果的一段非常优秀的JS代码。它可以简单的

JavaScript动态设置div的样式的方法 有时候需要根据需要动态设置div的样式,当然对于稍有经验的javascript开发者来说,这一切都是那么的简单,但是对于初学者或者说没有相关经验的开发

标签: 认识iu

本文链接地址:https://www.jiuchutong.com/biancheng/385560.html 转载请保留说明!

上一篇:详解Document.Cookie(详解各种汽油一吨等于多少升)

下一篇:如何解决easyui自定义标签 datagrid edit combobox 手动输入保存不上(easyui-dialog)

  • 网络课程购买
  • 用友会计报表
  • 银行账户利息怎么记账
  • 什么是实收资本其入账价值如何确定
  • 计提的成本次月怎么处理
  • 润滑油怎么做账务处理
  • 企业利润表的主要内容
  • 卷烟消费税纳税环节有几个
  • 报销差旅费退回现金是什么凭证
  • 案件补贴
  • 出纳现金日记账表格模板
  • 从公账转账私人转账
  • 购买税控设备,享受何种优惠政策
  • 物业公司代收供暖费,可以开发票吗
  • 在建工程科目的借方余额表示
  • 分公司税率怎样确定
  • 苗木公司经营理念
  • 销售推广的常用形式
  • prevsrv.exe - prevsrv是什么进程 有什么用
  • 网易打不开怎么退出游戏
  • 建筑业开具发票
  • 上季度成本多结转了怎么调
  • 完税凭证遗失后怎么处理
  • 应收账款可不可以作为质押合同的标的
  • 营改增的会计分录
  • 未开票收入怎么做账
  • 年度一次性计税
  • 华为心率血压智能手表怎么样
  • 普莱斯德
  • deepwiser怎么用
  • php发送post
  • 前端使用vue
  • 【机器学习】python实现吴恩达机器学习作业合集(含数据集)
  • 什么是多模态研究
  • 数学建模心态崩了
  • yolov3目标检测
  • mla指令
  • discuz怎么添加diy模块
  • 个税申报的本期收入是应发工资吗
  • 城建税要计入税金及附加吗
  • 融资租赁担保余值例题
  • 个人代人开普票个税怎么算
  • 金税盘维护费发票
  • 个人所得税如何缴纳
  • 销售收入发生变动的影响
  • 中级会计职称与中级会计师的区别
  • 员工请假扣款怎么做分录
  • 员工持股平台合伙企业
  • 困难行业企业包括哪四大类
  • 经营租赁的房屋计提折旧吗
  • 贴现凭证如何做账务处理
  • 小规模没交税有什么后果
  • 销售额营业收入是指一年还是一个月
  • 应税劳务会计分录
  • 从事小额零星经营业务的个人,其支出
  • 天猫佣金是啥
  • 旅游业最新增值税政策
  • 建筑装饰行业工业化道路研究参考文献
  • 房地产行业人工成本占比
  • sqlserver批处理
  • win7 32位旗舰版电脑城下载
  • win10补丁导致无法开机
  • win7如何设置共享
  • mac系统如何安装双系统
  • 没有光驱有什么影响
  • win7电脑dpi怎么设置800
  • WIN7如何设置屏幕保护密码
  • javascrapt
  • 批处理 输出换行
  • shell脚本相互调用
  • javax.net.ssl.SSLException: hostname in certificate didn't match:
  • JavaScript中setUTCMilliseconds()方法的使用详解
  • jquery设置禁用
  • json读取字符串
  • 孙其功陪你学之——unity3d进程暂停
  • Landroid/support/v7/internal/widget/ActionBarOverlayLayout;.stopNestedScroll
  • 河南省国家税务局电子税务局
  • 北京重点税源直报平台登录
  • 四川省地方税务局关于城镇土地使用税困难减免
  • 国家税务总局内蒙古分局
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设