挖空添加我自己的数据绑定属性,如 With
Knockout add my own data-bind attribute like With
很抱歉我的标题不好,但我真的不确定该怎么称呼它,有人可以引导我朝着正确的方向前进。
我正在打字稿和类KnockoutFileDropArea工作。
然后我想做的是这样的:
<div data-bind="with:fileDropArea">
<div data-bind="foreach:files">
</div>
</div>
KnockoutFileDropArea 具有属性文件 etc。
以上是直截了当的。只是在我的KnockoutFileDropArea等视图模型上添加一个属性。但是我需要做的是,当它绑定我的KnockoutFileDropArea时,我想对它绑定的HtmlElement做一些事情。
当我的 KnockoutFileDropArea 绑定时,我可以做些什么来将某些内容附加到元素?
创建一个新的(不记得它们叫什么,"绑定处理程序")会更好吗,比如。所以它就像<div data-bind="droparea: fileDropArea">
.
一个不错的选择是创建自定义绑定。
自定义绑定可以只在元素上执行所需的功能,并在元素绑定时运行,并且可以将其与with
绑定一起使用。
ko.bindingHandlers.test = {
init: function(element, valueAccessor, allBindings, data, context) {
//do something with the element
}
}
否则,自定义绑定可能会包装with
绑定,如下所示:
ko.bindingHandlers.test = {
init: function(element, valueAccessor, allBindings, data, context) {
//do something with the element
return ko.bindingHandlers["with"].init.apply(this, arguments);
},
update: function(element, valueAccessor, allBindings, data, context) {
return ko.bindingHandlers["with"].update.apply(this, arguments);
}
};
更新:在 KO 3.1 中,with
绑定不再具有update
函数,因为它现在可以为此目的使用init
中计算的。因此,可以删除上面的update
函数。
注意:with
被引用,因为较旧的IE不喜欢使用with
作为属性名称。
相关文章:
- RegEx删除空属性?例如,如果(class=“”||class=“”)移除;否则就下课
- 全局变量和全局对象的属性之间有什么区别吗
- Fighting with FRP
- 如果使用 lodash 将属性存在于另一个对象中,则向对象添加属性
- 如何在Bootstrap Modal中为动态点击生成的变量设置jade属性
- 序列化数据属性中对象的最可靠方法
- AngularJS select with ng选项不更新父作用域中的引用对象属性
- Ember.js with EmberFire Object - 如何使用数组属性
- 挖空“with”绑定:每个属性到多个控件
- 更改“with”属性会更改样式
- 挖空添加我自己的数据绑定属性,如 With
- 根据数据属性WITH Jquery的数值对元素进行排序
- AngularJS控制器的Unittest with Jasmine and Karma "无法读取属性
- CSS with JavaScript -无法读取属性'undefined'错误
- 无法读取属性'点击'的定义.slideToggle with each()
- 抽屉器的实现AppBar with Material-UI + React{不能读取属性'的零}
- 如何在React with Typescript中设置默认属性值
- Ember{{#with..controller=..}}给出了“;未捕获的类型错误:无法读取属性'lookup
- Knockout.js:使用with binding显示可观察的属性
- 从Object with Underscore.js中删除空属性/假值