gpt4 book ai didi

angularjs - UI 路由器 $stateChangeStart 根本不工作

转载 作者:行者123 更新时间:2023-12-01 07:46:14 25 4
gpt4 key购买 nike

这是我的 app.js

var $stateProviderRef = null;
var $urlRouterProviderRef = null;

var acadb = angular.module('acadb', [
'ngRoute',
'ui.router',
'ngAnimate',
'ui.bootstrap',

'acadb.controllers',
'acadb.services',
'acadb.filters',
'acadb.directives',

'ngResource',

'angularMoment',
'angularFileUpload',
'ui.materialize',
'angular-toArrayFilter',
'ngSanitize',
'metatags',
])


.run(['$rootScope', '$state', '$stateParams','$http', function($rootScope, $state, $stateParams,$http) {
$rootScope.$state = $state;
$rootScope.$stateParams = $stateParams;
}])

.config(['$locationProvider', '$stateProvider', '$urlRouterProvider', '$httpProvider',
function($locationProvider, $stateProvider, $urlRouterProvider, $httpProvider) {

// XSRF token naming
$httpProvider.defaults.xsrfHeaderName = 'x-dt-csrf-header';
$httpProvider.defaults.xsrfCookieName = 'X-CSRF-TOKEN';

//$httpProvider.interceptors.push('httpInterceptor');
$urlRouterProvider.otherwise("/");



$stateProvider



.state('home', {
url: "/",
templateUrl: '/partials/tpl/welcome.html',
})
.state('jobseeker', {
url: "/jobseeker",
templateUrl: '/partials/dashboard.php',

})
.state('register', {
url: "/register",
templateUrl: '/partials/auth/register.blade.php',
})
.state('login', {
url: "/login",
templateUrl: '/partials/tpl/login.html',
})

$locationProvider.html5Mode({
enabled: false
});
$stateProviderRef = $stateProvider;
$urlRouterProviderRef = $urlRouterProvider;

}])

.run(function($rootScope, $location, AuthenticationService, FlashService, MetaTags,$state ) {
console.log('ds');
$rootScope.$on('$stateChangeStart', function(event, next, current) {
event.preventDefault();
console.log('sd');
//if(!AuthenticationService.isLoggedIn()) {
// console.log(current);
// console.log(next);
//
//
//
// event.preventDefault();
// $state.go('login');
// FlashService.show("Please log in to continue.");
//}
//

});
}
)

我在生活中真正想要的只是在状态变化时控制台记录一个字符串..为什么第二个控制台日志没有在 stateChangeStart 上触发?

这令人沮丧。我在另一个应用程序中具有完全相同的逻辑,并且运行良好

最佳答案

要启用这些状态事件,请将 stateEvents.js 文件包含在您的项目中,例如,

<script src="stateEvents.js"></script>

并确保您依赖于 ui.router.state.events Angular 模块,例如,

angular.module("myApplication", ['ui.router', 'ui.router.state.events']

https://ui-router.github.io/ng1/docs/latest/modules/ng1_state_events.html

关于angularjs - UI 路由器 $stateChangeStart 根本不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35181729/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com