Подтвердить что ты не робот

$ event с ng-click - undefined

Почему переданный объект $event в функции toggleDropdown undefined?

Это исходный код: http://plnkr.co/edit/koNsQycAAiEmI8jBApS2?p=preview

за исключением того, что исходный код не имеет функции toggleDropdown в указанном теге-кнопке. Я сделал это, потому что исходный код НЕ открывает раскрывающийся список на моем компьютере.

Я использую angularjs 1.3.2 и angularjs-bootstrap 0.11.2

'use strict';
angular.module('auth').controller('AccountController', function ($scope) {

  $scope.status = {
    isopen: false
  };

  $scope.toggleDropdown = function($event) {
    $event.preventDefault();
    $event.stopPropagation();
    $scope.status.isopen = !$scope.status.isopen;
  };

});

<!-- Single button -->
<div class="btn-group" dropdown is-open="status.isopen">
  <button ng-click="toggleDropdown()" type="button" class="btn btn-primary dropdown-toggle" dropdown-toggle ng-disabled="disabled">
    Button dropdown <span class="caret"></span>
  </button>
  <ul class="dropdown-menu" role="menu">
    <li><a href="#">Action</a></li>
    <li><a href="#">Another action</a></li>
    <li><a href="#">Something else here</a></li>
    <li class="divider"></li>
    <li><a href="#">Separated link</a></li>
  </ul>
</div>
4b9b3361

Ответ 1

Вы должны явно указать, что вы передаете переменную $event:

<button ng-click="toggleDropdown($event)">

Ответ 2

Похоже, вам нужно загрузить jQuery, чтобы получить осмысленный объект события. Смотрите мою вилку вашего плунгу: http://plnkr.co/edit/ZpQuz1?p=preview

<script src="//code.jquery.com/jquery-1.11.0.min.js"></script>