2
저는 이것을 봤는데 사람들이이 문제를 가지고 있다는 것을 알았지 만 해결책을 찾지 못했습니다.AngularJs는 ng-model과 바인딩되지 않습니다.
그래서이 확인란 중 일부는 NG-확인 발현으로 인해 확인하는 경우 예를 들어, 내 코드
%section(ng-controller="UserCtrl" ng-init="user_genres=#{preferred_genres}")
%ul
%li(ng:repeat="genre in preferred_genres")
%input(type = "checkbox" ng:model="preferred_genres[genre]" id="genre-{{$index + 1}}" ng-checked="user_genres['{{genre}}']")
%label{:for => "genre-{{$index + 1}}"} {{genre}}
입니다 사실 및 페이지 렌더링합니다. 그리고 실제로 다시 체크 박스를 클릭하지 않았습니다. 컨트롤러에 관해서, 범위는 ng-checked로 인해 검사 된 것을 무시하는 것처럼 보입니다. 어떻게 그들을 잘 동기화 할 수 있습니까?
@toy가 'user_genres'의 원본 목록을 서버에서 가져온 경우 (예 : 원래 검사로 재설정 한 경우) 컨트롤러에 추가 할 수 있습니다. $ scope.preferred_genres ='angular.copy ($ scope.user_genres); ' –