Записи, загруженные из localStorage, похоже, не входят в $scope в Angular

URL-адрес http://kohlin.net/lab/angular/index.html Попробуйте создать пару контактов, отредактировать один или несколько (да, он удаляется при редактировании) и удалить один, чтобы убедиться, что он работает.

Проблема в том, когда вы перезагружаете. После этого вы не сможете редактировать или удалять отдельные контакты. Как будто он даже не слушает ng-click="editItem($index)" вообще.

Даже пытался реализовать ngStorage, но это тоже не помогло. Есть догадки?

Обновление. Похоже, я не могу включить материал.min.js (облегченный дизайн материала). Если я его удаляю, все работает как шарм.

Итак, новый вопрос. Как я могу заставить это приложение работать с облегченным дизайном материалов

(полностью ли удалить этот вопрос из stackru и создать новый?)

1 ответ

Решение

Похоже, это странная проблема CSS, когда контейнеры значков материалов перекрывают кнопки, предотвращая попадание событий кликов в обработчики.

Попробуйте поставить ngClick на кнопки вместо i:

<div class="mdl-card__menu">
    <button ng-click="editItem($index)" class="mdl-button mdl-button--icon mdl-js-button mdl-js-ripple-effect"><i class="material-icons">edit</i></button> 
    <button ng-click="removeItem($index)" class="mdl-button mdl-button--icon mdl-js-button mdl-js-ripple-effect"><i class="material-icons ">delete</i></button>
</div>
Другие вопросы по тегам