我正在尝试弄清楚如何使用 knockoutjs 验证插件。查看 github 上的项目站点,有一个入门部分描述了如何设置具有验证的视图模型。在此示例中,ViewModel 被声明为内联对象(这是正确的术语吗?),如下所示:
var myViewModel = ko.validatedObservable({
property1: ko.observable().extend({ required: true }),
property2: ko.observable().extend({ max: 10 })
});
console.log(myViewModel.isValid()); //false
myViewModel().property1('something');
myViewModel().property2(9);
console.log(myViewModel.isValid()); //true
但是,我想使用如下函数设置我的视图模型:
function MyViewModel() {
var self = this;
self.property1 = ko.observable().extend({ required: true });
self.property2 = ko.observable().extend({ max: 10 });
};
var viewModelInstance = new MyViewModel();
console.log(viewModelInstance.isValid()); //false
viewModelInstance.property1('something');
viewModelInstance.property2(9);
console.log(viewModelInstance.isValid()); //true
问题是我收到一个脚本错误,说我的viewModelInstance
对象没有方法isValid
。