ng-click не работает с mmenu

Я пытаюсь использовать меню mmenu http://mmenu.frebsite.nl/ с моим базовым приложением angularJS. ui-sref работает, но ng-click не работает со ссылкой mmenu. Может ли кто-нибудь помочь мне, что я не так делаю.

Главная страница HTML

<body ng-app="student">
            </div>
            <div class="header"><a href="#menu"></a>menu</div>
            <div class="content">
                    <div ui-view></div>
            </div>
            <nav id="menu">
        <ul>
            <li ><a ng-href=""  ng-click="holidayInfo()">Holiday</a></li>
            <li><a ui-sref="notices">Notices</a></li>
    </ul>
</nav>
</div>
</body>

app.js

app.config(['$urlRouterProvider', '$stateProvider', '$locationProvider','RestangularProvider',
        function ($urlRouterProvider,   $stateProvider, $locationProvider, RestangularProvider ) {
            $urlRouterProvider.otherwise('/');
            $stateProvider
                .state("home", {
                    url: "/",
                    templateUrl: 'home.html',
                    controller:'homeCtrl as vm',
                    resolve: {
                        currentyear: function (Restangular, $stateParams) {
                            return Restangular.one('CurrentACYear').get();
                        }
                    }
                })
                .state("notices", {
                    url: "/notices",
                    templateUrl: 'notices.html',
                    controller:'schoolNoticesCtrl as vm',
                    resolve: {
                        notciesList: function (Restangular, $stateParams) {
                            return Restangular.one('notices').get();
                        }
                    }
                })

мой holidayInfo() метод находится в контроллере homeCtrl.
Когда я делаю <nav id="menu" ng-controller="homeCtrl"> он выдает ошибку, не может решить текущий год.

1 ответ

Ты имел # в href of Holiday который выполняет $urlRouter.otherwise код, который является резервным URL.

Должно быть пустым

ng-href=""

Другое дело, что вы не имели nav перенос строки с областью контроллера, где вы написали holidayInfo метод. Там вы можете иметь новый контроллер для вашего navbar компонент и есть holidayInfo метод там.

наценка

<nav id="menu" ng-controller="navbarCtrl">
  <ul>
      <li><a ng-href="#"  ng-click="holidayInfo()">Holiday</a></li>
      <li><a ui-sref="notices">Notices</a></li>
  </ul>
</nav>

Код

app.controller('navbarCtrl', function(){
   $scope.holidayInfo = function () {
       console.log("i am trigeered ....")
   };
})

Обновите вопрос, добавив дополнительную информацию, если вы все еще нашли проблему.

Другие вопросы по тегам