是否可以在 Knockout JS 中查看附加到可观察对象的所有扩展程序和绑定?
示例视图模型:
var viewModel = function(){
var self = this;
self.firstName = ko.observable().extend({required: "Please enter a name",
logChange: "first name" });
self.lastName = ko.observable().extend({ required:true});
}
除了KO Validation Plugin之外,我还使用了几个自定义 bindingHandlers,包括Knockout X-Editable Plugin
示例多页视图:
<!--Screen 1 -->
<input data-bind="value:firstName"/>
....
<!--Screen 2 -->
<span data-bind="editable:firstName"></span>
A. 有没有办法查询self.firstName()
并获取所有扩展程序的列表?
{required: "Please enter a name", logChange: "first name" }
B. 我可以运行另一个查询来获取依赖于这个 observable 的所有绑定处理程序吗?这可以作为 DOM 元素返回吗?
基本上我正在尝试显示导入数据的验证错误,但<span data-bind="editable"/>
如果我在第二个视图中,我想将它们附加在下面。
单独验证每个输入时这很简单,但使用ko.validation.group(viewModel)
. 即使我遍历每个错误,我也看不到如何将它们与引发错误的原始 observable 关联起来。