当登录成功并且页面将重定向主页时,我使用$state.go('home')
,但控制台错误
实际上浏览器网址已更改http://127.0.0.1:4000/#/home
我不知道如何解决。
userService.js
angular.module('app')
.factory('userService', ['$http', '$q', function($http, $q) {
function retrieveInstance(type, json) {
var instance = cache[type];
if (instance) {
instance.setProperties(json);
cache[type] = instance;
}
return instance;
}
return {
login: function(username, password) {
var deferred = $q.defer();
var data = {
username: username,
password: password
};
var noramlUrl = '/login/';
$http.post(serverUrl + noramlUrl, data)
.success(function(jsonObj) {
if (jsonObj.isSucc) {
console.log(jsonObj.msg);
deferred.resolve(jsonObj);
} else {
deferred.reject();
}
})
.error(function() {
console.log("login error!");
deferred.reject();
});
return deferred.promise;
},
};
}]);
app.js
angular.module('app', [
'ngMaterial',
'ngMessages',
'material.svgAssetsCache',
'ui.router',
'oc.lazyLoad'
])
.config(['$stateProvider', '$urlRouterProvider',
'$ocLazyLoadProvider',
function($stateProvider, $urlRouterProvider, $ocLazyLoadProvider)
{
$ocLazyLoadProvider.config({
debug: true,
catch: true,
events: true,
// modules: {
// name: '',
// files: []
// }
});
$urlRouterProvider.otherwise('/home');
$stateProvider.state('home', {
url: '/home',
controller: 'homeCtrl',
templateUrl: 'home/template/home.tpl.html',
resolve: {
load: ['$ocLazyLoad', function($ocLazyLoad) {
return $ocLazyLoad.load([
'home/controller/home.ctrl.js',
'home/css/home.css',
'common/css/common.css'
]);
}]
}
})
.state('login', {
url: '/login',
controller: 'loginCtrl',
templateUrl: 'login/template/login.tpl.html',
resolve: {
load: ['$ocLazyLoad', function($ocLazyLoad) {
return $ocLazyLoad.load([
'login/controller/login.ctrl.js',
'login/service/userService.js',
'common/css/common.css',
'login/css/login.css'
]);
}]
}
});
}
]);
var serverUrl = 'http://192.168.31.159:8080';
angular.element(document).ready(function() {
angular.bootstrap(document, ['app']);
});
catch: true,
events: true,
// modules: {
// name: '',
// files: []
// }
});
$urlRouterProvider.otherwise('/home');
$stateProvider.state('home', {
url: '/home',
controller: 'homeCtrl',
templateUrl: 'home/template/home.tpl.html',
resolve: {
load: ['$ocLazyLoad',
function($ocLazyLoad) {
return $ocLazyLoad.load([
'home/controller/home.ctrl.js',
'home/css/home.css',
'common/css/common.css'
]);
}]
}
})
.state('login', {
url: '/login',
controller: 'loginCtrl',
templateUrl: 'login/template/login.tpl.html',
resolve: {
load: ['$ocLazyLoad',
function($ocLazyLoad) {
return $ocLazyLoad.load([
'login/controller/login.ctrl.js',
'login/service/userService.js',
'common/css/common.css',
'login/css/login.css'
]);
}]
}
});
}
]);
var serverUrl = 'http://192.168.31.159:8080';
angular.element(document).ready(function() {
angular.bootstrap(document, ['app']);
});
login.ctrl.js
angular.module('app', [])
.controller('loginCtrl', ['$scope', '$state', '$http', '$q',
'userService', function($scope, $state, $http, $q,
userService) {
$scope.name = "login.ctrl Module";
console.log($scope.name);
$scope.login = function() {
userService.login($scope.username,
$scope.password).then(function(json) {
if (json.isSucc) {
console.log(json.isSucc);
$state.go('home');
}
}, function() {
console.log("login error !");
});
};
}]);