如何将登录页面作为第一页加载

时间:2015-04-21 07:56:01

标签: javascript angularjs ionic

我正在使用离子框架。我试图加载登录页面作为第一页,但无法看到它只是得到一个空页面。 我的代码看起来像是 app.js:

app.config(function ($stateProvider, $urlRouterProvider) {
    $stateProvider

        .state('app', {
            url: "/app",
            abstract: true,
            templateUrl: "templates/menu.html",
            controller: 'AppCtrl'
        })

和控制器:

        .controller('AppCtrl', function ($scope, $state, $ionicModal) {
            $ionicModal.fromTemplateUrl('templates/login.html', function(modal) {
                    $scope.loginModal = modal;
                },
                {
                    scope: $scope,
                    animation: 'slide-in-up',
                    focusFirstInput: true
                }
            );
      //Be sure to cleanup the modal by removing it from the DOM
      $scope.$on('$destroy', function() {
        $scope.loginModal.remove();
      });
.controller('LoginCtrl', function ($scope, $state, AuthenticationService) {
        $scope.message = "";

        $scope.user = {
            username: null,
            password: null
        };

        $scope.login = function () {
            AuthenticationService.login($scope.user);
        };

        $scope.$on('event:auth-loginRequired', function (e, rejection) {
            console.log('handling login required');
            $scope.loginModal.show();
        });

        $scope.$on('event:auth-loginConfirmed', function () {
            $scope.username = null;
            $scope.password = null;
            $scope.loginModal.hide();
        });

但仍然无法看到它。 我的应用看起来像  https://github.com/keithdmoore/ionic-http-auth但没有主页。 日Thnx!

1 个答案:

答案 0 :(得分:3)

尝试更改app.config部分。

app.config(function ($stateProvider) {
$stateProvider.otherwise({ redirectTo: '/login' });
$stateProvider
        .state('app', {
            url: "/app",
            abstract: true,
            templateUrl: "templates/menu.html",
            controller: 'AppCtrl'
        }).state('login', {
            url: "/login",
            templateUrl: "login.html page url",
            controller: 'login controller'
        }));

不需要编写任何代码appcontroller'. Whenever you run the application the url path is should be empty. So this line $stateProvider.otherwise({ redirectTo: '/login' });有助于打开登录屏幕。