Rumah > Soal Jawab > teks badan
Saya baru sahaja melihat projek todoMVC angularjs dan mendapati ia menyesuaikan penapis dalam pengawal
$scope.$watch('TC.location.path()',function (path) {
TC.Filters = {'/active':{completed: false},'/completed':{completed:true}}[path];
});
Selepas itu dalam paparan
<li ng-repeat="todo in TC.todos | filter:TC.Filters track by $index" ng-class="{completed: todo.completed, editing: todo === TC.editedTodo}">
Masalah saya terutamanya saya tidak faham cara sekeping kod pertama ditulis
function (path) {
TC.Filters = {'/active':{completed: false},'/completed':{completed:true}}[path];
}
Dalam kaedah ini, selepas melalui laluan, penapis berbeza dipilih berdasarkan laluan.
伊谢尔伦2017-05-15 17:00:57
Walaupun alasannya telah diberikan di atas, saya rasa anda tidak begitu memahaminya. Izinkan saya memberikan anda dokumen untuk melihat apakah $watch
dokumen itu.
阿神2017-05-15 17:00:57
$scope.$watch('TC.location.path()',function (path) {
TC.Filters = {'/active':{completed: false},'/completed':{completed:true}}[path];
});
Di sini, perubahan dalam laluan dipantau Apabila laluan berubah, parameter penapis juga berubah. Malah, ia adalah pertukaran antara data yang lengkap dan aktif