KnockoutJS 3.X API 第四章之数据控制流with绑定


Posted in Javascript onOctober 10, 2016

with绑定的目的

使用with绑定的格式为data-bind=”with:attribute”,使用with绑定会将其后所跟的属性看作一个新的上下文进行绑定。with绑定内部的所有元素将受到该上下文的约束。

当然,with绑定也可配合if或foreach绑定一起使用。

示例1

<h1 data-bind="text: city"> </h1>
<p data-bind="with: coords">
Latitude: <span data-bind="text: latitude"> </span>,
Longitude: <span data-bind="text: longitude"> </span>
</p>
<script type="text/javascript">
ko.applyBindings({
city: "London",
coords: {
latitude: 51.5001524,
longitude: -0.1262362
}
});
</script>

本例中,通过with直接绑定了coords监控属性,并在其内部直接调用了coords监控属性的内部属性。这里就体现了with绑定的特性。

示例2:一个互动的例子

KnockoutJS 3.X API 第四章之数据控制流with绑定

该例子中将使用with绑定动态添加和删除其绑定值为null/undefined或非null/undefined

UI源码:

<form data-bind="submit: getTweets">
Twitter account:
<input data-bind="value: twitterName" />
<button type="submit">Get tweets</button>
</form>
<div data-bind="with: resultData">
<h3>Recent tweets fetched at <span data-bind="text: retrievalDate"> </span></h3>
<ol data-bind="foreach: topTweets">
<li data-bind="text: text"></li>
</ol>
<button data-bind="click: $parent.clearResults">Clear tweets</button>
</div>

视图模型源码:

function AppViewModel() {
var self = this;
self.twitterName = ko.observable('@example');
self.resultData = ko.observable(); // No initial value
self.getTweets = function() {
var name = self.twitterName(),
simulatedResults = [
{ text: name + ' What a nice day.' },
{ text: name + ' Building some cool apps.' },
{ text: name + ' Just saw a famous celebrity eating lard. Yum.' }
];
self.resultData({ retrievalDate: new Date(), topTweets: simulatedResults });
}
self.clearResults = function() {
self.resultData(undefined);
}
}
ko.applyBindings(new AppViewModel());

备注:with的无容器绑定(虚拟绑定)

像if、foreach等的虚拟绑定一样,with绑定也一样。使用<!-- ko -->和<!-- /ko -->进行。

<ul>
<li>Header element</li>
<!-- ko with: outboundFlight -->
...
<!-- /ko -->
<!-- ko with: inboundFlight -->
...
<!-- /ko -->
</ul>

以上所述是小编给大家介绍的KnockoutJS 3.X API 第四章之数据控制流with绑定,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
url 编码 js url传参中文乱码解决方案
Apr 11 Javascript
js 文件引入实现代码
Apr 23 Javascript
用innerhtml提高页面打开速度的方法
Aug 02 Javascript
js写的评论分页(还不错)
Dec 23 Javascript
jquery序列化表单以及回调函数的使用示例
Jul 02 Javascript
vue中v-cloak解决刷新或者加载出现闪烁问题(显示变量)
Apr 20 Javascript
解决vue中使用Axios调用接口时出现的ie数据处理问题
Aug 13 Javascript
详解关于element级联选择器数据回显问题
Feb 20 Javascript
vue 2.5.1 源码学习 之Vue.extend 和 data的合并策略
Jun 04 Javascript
微信小程序纯文本实现@功能
Apr 08 Javascript
vue 使用饿了么UI仿写teambition的筛选功能
Mar 01 Vue.js
React自定义hook的方法
Jun 25 Javascript
JS命令模式例子之菜单程序
Oct 10 #Javascript
KnockoutJS 3.X API 第四章之数据控制流component绑定
Oct 10 #Javascript
KnockoutJS 3.X API 第四章之click绑定
Oct 10 #Javascript
KnockoutJS 3.X API 第四章之事件event绑定
Oct 10 #Javascript
KnockoutJS 3.X API 第四章之表单submit、enable、disable绑定
Oct 10 #Javascript
让浏览器崩溃的12行JS代码(DoS攻击分析及防御)
Oct 10 #Javascript
KnockoutJS 3.X API 第四章之表单value绑定
Oct 10 #Javascript
You might like
phpmyadmin 3.4 空密码登录的实现方法
2010/05/29 PHP
PHP数组无限分级数据的层级化处理代码
2012/12/29 PHP
php如何执行非缓冲查询API
2016/07/22 PHP
php实现每日签到功能
2018/11/29 PHP
深入理解PHP+Mysql分布式事务与解决方案
2020/12/03 PHP
JavaScript自定义日期格式化函数详细解析
2014/01/14 Javascript
jQuery is()函数用法3例
2014/05/06 Javascript
JS常用表单验证方法总结
2014/05/22 Javascript
javascript基本语法
2016/05/31 Javascript
分享jQuery网页元素拖拽插件
2020/12/01 Javascript
在html中引入外部js文件,并调用带参函数的方法
2016/10/31 Javascript
关于不同页面之间实现参数传递的几种方式讨论
2017/02/13 Javascript
javacript replace 正则取字符串中的值并替换【推荐】
2018/09/13 Javascript
JS动画实现回调地狱promise的实例代码详解
2018/11/08 Javascript
解决layer弹出层自适应页面大小的问题
2019/09/16 Javascript
js实现圆形显示鼠标单击位置
2020/02/11 Javascript
vue 输入电话号码自动按3-4-4分割功能的实现代码
2020/04/30 Javascript
微信小程序实现可长按移动控件
2020/11/01 Javascript
Django项目实战之用户头像上传与访问的示例
2018/04/21 Python
pandas DataFrame的修改方法(值、列、索引)
2019/08/02 Python
基于python操作ES实例详解
2019/11/16 Python
Python实现的北京积分落户数据分析示例
2020/03/27 Python
利用python+request通过接口实现人员通行记录上传功能
2021/01/13 Python
css3实现的多级渐变下拉菜单导航效果代码
2015/08/31 HTML / CSS
html5通过canvas实现刮刮卡效果示例分享
2014/01/27 HTML / CSS
HTML5 图片悬停放大的实现代码示例
2019/12/04 HTML / CSS
size?爱尔兰官方网站:英国伦敦的球鞋精品店
2019/03/31 全球购物
怎样让char类型的东西转换成int类型
2013/12/09 面试题
Linux面试经常问的文件系统操作命令
2016/10/04 面试题
财务主管的岗位职责
2013/12/30 职场文书
早读迟到检讨书
2014/01/24 职场文书
2014年教师党员公开承诺书
2014/05/28 职场文书
保管员岗位职责
2015/02/14 职场文书
撤诉申请怎么写
2015/05/19 职场文书
黄埔军校观后感
2015/06/10 职场文书
小学体育组工作总结
2015/08/13 职场文书