녹아웃 검증을 사용하여 유효성 검사를 배열로 설정하는 방법은 무엇입니까?녹아웃 매핑 - 배열 유효성 검사
내 개체 정의
//c# code
public class Trophy
{
public string Name { get; set; }
public string Category { get; set; }
public double PrizeMoney { get; set; }
}
public class Player
{
public string Name { get; set; }
public List<Trophy> Trophies { get; set; }
}
내가 '이름'같은 간단한 종류의 코 검증을 사용하여 '필요'와 같은 검증을 설정할 수 있어요하지만 내가 배열입니다 트로피로 설정할 수 없습니다. 나는 다음과 같이 사용하는 간단한 유형의
// javascript code
var localModel = ko.mapping.fromJSON(getPlayerModelJson());
// Validation
localModel.Name.extend({ required: { message: 'Please enter first name' } });
나를 트로피에 함께 이름, 종류와 PrizeMoney을 위해 수행하는 방법을 알려주세요?
나는
http://knockoutjs.com/documentation/plugins-mapping.html에서 언급 한 바와 같이 ' "생성"을 사용하여 객체 생성 사용자 정의'의 사용을 만들려고하지만 난 트로피 결과 객체에 두 개의 목록 항목이있는 경우는 예를 들어, 중복 트로피 배열 항목을 만들고있다 또한 두 항목이 있지만 마지막 항목과 중복되었습니다.
// Java script code
var Trophies = function (data) {
Name = ko.observable(data.Name).extend({ required: { message: 'Please enter name' } }),
Category = ko.observable(data.Category),
PrizeMoney = ko.observable(data.PrizeMoney)
}
var localModel = ko.mapping.fromJSON(getPlayerModelJson(), TrophiesMapping);
//Custom mapping
var TrophiesMapping = {
'Trophies': {
create: function (options) {
return new Trophies(options.data);
}
}
}
원하는 것은 배열의 속성을 확인하는 것입니다. 감사합니다.
감사합니다. Corey Cole. 문제는 ko.mapping.fromJSON이 아니라 트로피 개체와 함께, 코드의 차이점은 self (this) (self.Name, self.Trophy 및 self.PrizeMoney)를 사용하여 참조하는 것이 었습니다. 그래서 그 문제가 해결되었습니다. – Swamy