Проблема, с которой мы сталкиваемся, - это закрыть всплывающее окно "Фонд для приложений", когда нажата кнопка "дать отзыв".
<a class="align-center app-student-icon"
zf-popup-toggle="{{'popup-' + $index}}">
<span ng-bind="getMemberById(assessment.user).fullname"></span>
<i class="icon icon-pencil-no-fill"></i>
</a>
<zf-popup id="{{'popup-' + $index}}" class="padding text-center">
<h5>Question Feedback</h5>
<textarea name="name"
rows="4"
placeholder="Leave feedback here"
ng-model="assessment.test.tutorFeedback"></textarea>
<button type="submit"
class="button expand"
ng-click="closeAndSavePopup('popup-' + $index, assessment)">Give feedback</button>
</zf-popup>
Кнопка "Отправить отзыв" запускает следующую функцию области видимости:
scope.closeAndSavePopup = function (popupId, object) {
saveFeedback(object);
setTimeout(function () {
FoundationApi.closeActiveElements();
});
};
У нас есть зависимость, вложенная в фундаментApi, поэтому мы можем получить доступ к функциям модуля, которые нам дали. Мы использовали приведенный выше пример, а также
FoundationApi.publish(popupId, 'close')
Однако при нажатии фонового всплывающего окна, похоже, не хочется закрываться. Мы также использовали toggle вместо того, чтобы видеть, изменится ли это.
Кто-нибудь еще пришел в эту проблему и нашел решение?
Изучив код фонда, мы поняли, что это была ошибка/плохая документация нашей версии фундамента для приложений.
Ответ заключается в том, чтобы закрыть "закрыть" в квадратных скобках.
FoundationApi.publish(popupId, ['close'])
Причина в том, что в базе javascript ожидается массив для всплывающих окон и почти что-нибудь еще строка.. Так глупо..
ура