Knockout-Validation과 함께 KnockoutJS 2.2.1을 사용하고 있습니다. 유효성 검사와 사용자 지정 익스텐더를 만드는 데 방해가되는 알려진 버그가 있습니까?녹아웃 유효성 검사가 사용자 정의 익스텐더를 방해합니까?
어떻게 든 나는 사용자 정의 익스텐더를 추가 할 수 없기 때문에. 이 코드를 실행하려고하면 : reportDate 그는
Uncaught TypeError: Cannot read property 'rules' of undefined
나요 누군가를 "정의되지 않은 규칙"을 찾을 수없는, 내 익스텐더, 녹아웃 - 유효성 검사에 문제가있는 것입니다
self.from = ko.observable(new Date()).extend({ reportDate: { timeZoneValue: self.timeZoneValue} });
이 문제가 있었나요? 그것을 해결하는 방법? 여기
는 reportDate 연장하는 코드이다ko.extenders.reportDate = function (target, options) {
var lastValidValue = new Date();
target.subscribe(function (newValue) {
if (newValue == null) {
target(lastValidValue);
} else {
lastValidValue = newValue;
}
var isoDate = moment(DateProvider.adjustDateFromTimeZoneToUtc(target(), options.timeZoneValue())).toISOString();
target.ISODateString = isoDate;
});
};
녹아웃 유효성 검사의 맞춤 규칙이 여기에 문제가 될 수 있는지 궁금합니다. 특히 그것이 무엇인지 명확하지 않은 registerExtenders() 함수.
$(function() {
ko.validation.init({
insertMessages: true,
decorateElement: true,
errorElementClass: "error",
errorMessageClass: "validation-message",
grouping: { observable: true, deep: true }
});
ko.validation.registerExtenders();
});
일반적으로 Extender는 나란히 작업해야하지만 사용자 정의 Extender 구현에 따라 다르므로 'reportDate' 코드를 게시 할 수 있습니까? 또한 샘플에서 ko.validaiton을 사용하는 위치/방법을 볼 수 없으므로 예제를 확장하여 유효성 검사 플러그인을 사용하는 방법을 보여줄 수 있습니까? jsfiddle repro가 문제를 해결하는 데 가장 이상적 일 것입니다 ... – nemesv
자세한 내용을 추가했습니다 –