У меня проблема с привязкой переключателей к объекту, свойства которого имеют логические значения. Я пытаюсь отобразить вопросы экзамена, полученные из ресурса $.
HTML:
<label data-ng-repeat="choice in question.choices">
<input type="radio" name="response" data-ng-model="choice.isUserAnswer" value="true" />
{{choice.text}}
</label>
JS:
$scope.question = {
questionText: "This is a test question.",
choices: [{
id: 1,
text: "Choice 1",
isUserAnswer: false
}, {
id: 2,
text: "Choice 2",
isUserAnswer: true
}, {
id: 3,
text: "Choice 3",
isUserAnswer: false
}]
};
В этом примере объекта свойство isUserAnswer: true не приводит к выбору переключателя. Если я заключаю логические значения в кавычки, это работает.
JS:
$scope.question = {
questionText: "This is a test question.",
choices: [{
id: 1,
text: "Choice 1",
isUserAnswer: "false"
}, {
id: 2,
text: "Choice 2",
isUserAnswer: "true"
}, {
id: 3,
text: "Choice 3",
isUserAnswer: "false"
}]
};
К сожалению, моя служба REST рассматривает это свойство как логическое значение, и будет трудно изменить сериализацию JSON для инкапсуляции этих значений в кавычках. Есть ли другой способ установить привязку модели без изменения структуры моей модели?