离子打开控制器的功能

时间:2015-10-14 14:12:42

标签: controller ionic

使用离子样本提供ionic start conference sidemenu 有一个功能可以打开登录模态

menu.html

<ion-item menu-close ng-click="login()">
Login
</ion-item>

问题 如何从控制器打开login()功能? NB :它没有在app.js中路由,所以它让事情变得更难。

我的尝试: controller.js

.controller('ProfileCtrl', function ($scope, ngFB, $location) {
    $location.scope('login()');
});

2 个答案:

答案 0 :(得分:0)

这取决于login()函数的位置。

  1. 如果它位于$ rootScope中,那么你可以调用$ rootScope.login()
  2. 如果它位于服务中,则将服务注入您的控制器并调用service.login()
  3. 如果它位于另一个控制器中,则将其放入rootscope或(甚至更好)编写服务。

答案 1 :(得分:0)

很抱歉,想出来。在阅读文档后,我不得不使用$ionicModal进行模态

controller.js

.controller('ProfileCtrl', function ($scope, ngFB, $ionicModal) {

    $ionicModal.fromTemplateUrl('templates/login.html', {

        scope: $scope
    }).then(function (modal) {
        $scope.modal = modal;
        console.log("here");
        $scope.modal.show();
    });

    $scope.closeLogin = function () {
        $scope.modal.hide();
    };

});