我有一个淘汰赛自定义绑定,它将功能包装到图像裁剪库(https://github.com/fengyuanchen/cropper。)我正在捕捉cropend.cropper 事件以(最终)将裁剪后的输出附加到可观察对象。
我在用着:
- 淘汰赛3.3
- jQuery 2.1.4
- 裁剪器 2.0
这是绑定处理程序:
ko.bindingHandlers.cropper = {
init: function (element, valueAccessor, allBindings, viewModel, bindingContext) {
var $element = $(element);
var value = ko.unwrap(valueAccessor());
var a = 1;
ko.utils.registerEventHandler(element, "cropend.cropper", function (event) {
var previewOutputObservable = allBindings.get('previewOutput');
var valueAccessorFromAllBindings = allBindings.get('cropper');
var b = 1;
});
$element.cropper(value);
},
update: function(element, valueAccessor, allBindings, viewModel, bindingContext) {
var $element = $(element);
var value = ko.unwrap(valueAccessor());
var c = 1;
}
};
这是我要绑定的元素:
<img class="img-responsive" data-bind="attr: {'src': sampleObservable}, cropper: { aspectRatio: 16/9 }, previewOutput: cropPreview "/>
var b = 1当我在;上放置断点(在 chrome 中)时 除了 allBindings 之外,没有定义 init 中的任何参数。不过,我已经看到几个使用这种通用模式的示例(例如这里)。我究竟做错了什么?