현재 뮤직 플레이어가 있는데, 구체적인 html은 다음과 같습니다
으아악this.music_audio는 오디오 요소입니다
this.now_music은 this.music_list에서 데이터를 가져와 현재 재생 중인 음악을 객체로 나타냅니다. 형식은 다음과 같습니다. {src: "http://baidu.com/1.mp3",name:"xxxname"}
playClass는 버튼 상태 true 버튼입니다. false 버튼은 재생 스타일이고 일시 정지 스타일입니다.
this.music_progress는 진행률 표시줄입니다.
다음 노래를 클릭하면 목록에서 다음 음악을 가져온 다음 now_music을 업데이트합니다. 뷰는 now_music.src에 따라 DOM을 업데이트하는 동시에 현재 음악을 일시 중지됨으로 설정합니다. 상태. 문제는 src 변경 사항이 자동으로 재설정된다는 것입니다.
이제 문제가 발생합니다.
[{src: "123.mp3"}, {src:123.mp3}]와 같은 두 개의 동일한 src가 있는 경우. , 그러면 뷰는 src가 업데이트되지 않습니다. 그래서 다음 곡을 클릭해도 여전히 현재 음악 상태를 알 수 있습니다.
그러면 src가 동일하더라도 AngleJS에서 DOM을 강제로 새로 고치는 방법을 묻고 싶습니다.
$scope.$apply를 참조하세요
ng 함수에 없으면 값이 수정되는 곳에 $scope 및 $apply를 전달하면 됩니다