IE9에서 녹아웃 (2.1.0) 및 녹아웃 매핑 (2.1.2)을 사용하여 약간의 수수께끼가 생겼습니다. 어떤 이유로 객체의 배열 인덱스는 부모 객체로 변환됩니다. 예를 들어 :knockout.mapping, IE9 및 serialization
ko.mapping.toJSON(attachments);
은 크롬에서 다음과 같습니다 뭔가 생산 :
{
"UserID": 432,
"Attachments": [{
"AttachmentID": 2,
"OwnerID": 321,
"DisplayName": "sample.pdf",
"Description": "desc",
"PostDate": "2012-06-01T09:24:43.817"
}, {
"AttachmentID": 3,
"OwnerID": 432,
"DisplayName": "sample3.pdf",
"Description": "desc",
"PostDate": "2012-06-05T14:01:00.693"
}, {
"AttachmentID": 4,
"OwnerID": 543,
"DisplayName": "sample2.pdf",
"Description": "desc",
"PostDate": "2012-06-05T14:01:49.18"
}]
}
을 ...하지만 IE9,이 같은 생산 : 이것은 내 녹아웃 바인딩을 나누기
{
"UserID": 432,
"Attachments": {
"0": {
"AttachmentID": 2,
"OwnerID": 321,
"DisplayName": "sample.pdf",
"Description": "desc",
"PostDate": "2012-06-01T09:24:43.817"
},
"1": {
"AttachmentID": 3,
"OwnerID": 432,
"DisplayName": "sample3.pdf",
"Description": "desc",
"PostDate": "2012-06-05T14:01:00.693"
},
"2": {
"AttachmentID": 4,
"OwnerID": 543,
"DisplayName": "sample2.pdf",
"Description": "desc",
"PostDate": "2012-06-05T14:01:49.18"
}
}
}
을 왜냐하면 템플릿은 첨부 파일이 1 차 배열이 될 것으로 기대하기 때문입니다.
흥미롭게도, json2의 stringify는 내가 시도한 모든 브라우저에서 첫 번째 결과물 (내가 기대했던 것)을 반환합니다.
누구든지 이전에이 동작을 보았습니까? 그것을 고칠 수있는 방법에 대한 아이디어?
는 버그처럼 들립니다 .... 여기에 신고 해주세요 : - https://github.com/SteveSanderson/knockout.mapping/issues –
[신고] (https://github.com/SteveSanderson/knockout.mapping)/issues/81). – Ross