2015-11-04 2 views
0

У меня есть вложенный список для отображения комментариев и ответов с 3 уровнями. Я переключаю даты с момента-времени на фактический щелчок, показывая и скрывая один из двух элементов даты. Это хорошо работает для каждого уровня, используя ng-click="$parent.swapDate=!$parent.swapDate", но не влияет на другие уровни.Переключение булевой переменной из вложенных директив AngularJS или Ionic

Как я могу применить переключатель к всем уровням структуры, которая выглядит следующим образом (упрощенная)?

Я бы предпочел не использовать глобальную переменную или услугу для такой простой вещи. Спасибо.

ответ

1

внутри ng-click или ng-hide или другой ng-xx, $ parent.var становится изолированным после его изменения, поэтому другой div не изменится. попробуйте поместить его в объект, например. $ parent.var_obj = {var: xx}

+0

Я подозреваю, что вы имеете в виду использование объектов, а не примитивов (проблема «точка»). Пожалуйста, уточните (и используйте разметку кода для удобства чтения). – isherwood

0

Ответы «Ответы» помогли мне отправить меня в правильном направлении. Фактически, я читал a good article, в котором упоминается «точка» наилучшей практики для переменных области, и я вернулся к этому вопросу для исследования.

Просто замена

$parent.swapDate 

с

comments.swapDate 

во всех случаях решает проблему.

Смежные вопросы