Потерять события с помощью ng-include

0

Я новичок в Html/Css/Js, и у меня есть следующая проблема: я хочу создать список определенного компонента. Я уже создал компонентA (работает отлично), и теперь, в компоненте B, я хочу добавить с ng-include определенное количество компонентовA, но, похоже, оно потеряло мое событие ng-click.

Кто-нибудь может мне помочь?

Позднее редактирование:

Это часть компонентаA: HTML:

<div id="container" class="container"> 
    <p   id="details"   class="details"   ng-show="!pressed" ng-click="Expand();">DETAILS</p>
</div>

JS:

'use strict';

angular.module('app', [])
  .directive('componentA', [function () {

      return {
          templateUrl: 'componentA.html',
          restrict: 'A',
          scope: true,
          controller: function ($scope) {

              $scope.pressed = false;

              $scope.Expand = function() {

                  if ($scope.pressed === true) {
                      $scope.pressed = false;
                      document.getElementById("container").style.width = '550px';
                      document.getElementById("details").style.webkitAnimation = "fadein 3s";
                  }
                  else{
                      $scope.pressed = true;
                      document.getElementById("container").style.width="780px";
                  }
              };
          }
      };
  }]);

В ComponentB я пытаюсь добавить некоторые компоненты A, как это:

<div ng-include="'componentA.html'"></div>
<div ng-include="'componentA.html'"></div>
<div ng-include="'componentA.html'"></div> 

он показывает компоненты A, уважает все вещи из моего файла css, но ничего из моего js файла.

  • 0
    пожалуйста, отправьте код - см. McVE
  • 0
    Пожалуйста, покажите нам часть вашего кода, иначе вам трудно помочь
Показать ещё 2 комментария

1 ответ

0
Лучший ответ

Вы создали директиву атрибута - поэтому нет смысла использовать ng-include (он просто вставляет шаблон, а не логику).

<div component-a></div>

Во-вторых, плохой практикой является манипулирование DOM через контроллер. Похоже, что в этом случае имеет смысл использовать директиву ngClass в вашем шаблоне вместо изменения стилей в контроллере.

  • 0
    спасибо @ Итамар Л.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню