Javascript 在每个控制器的开头运行一个函数
我想在我拥有的每个控制器的开头运行一个函数,如下所示:Javascript 在每个控制器的开头运行一个函数,javascript,angularjs,controller,Javascript,Angularjs,Controller,我想在我拥有的每个控制器的开头运行一个函数,如下所示: faraWorkspaceApp.controller('AccountController', function () { FaraFunctions(); // this function }); faraWorkspaceApp.controller('DashboardController', function () { FaraFunctions(); // this function }); faraWork
faraWorkspaceApp.controller('AccountController', function () {
FaraFunctions(); // this function
});
faraWorkspaceApp.controller('DashboardController', function () {
FaraFunctions(); // this function
});
faraWorkspaceApp.controller('ChangePasswordController', function () {
FaraFunctions(); // this function
});
在哪里可以放置此代码并防止重复
FaraFunctions()代码>angular js中的代码?因为您使用的是ui.router
,所以请改用stateChangeStart
.run(function($rootScope, $location, $state) {
$rootScope.$on( '$stateChangeStart', function(e, toState , toParams
, fromState, fromParams) {
var isLogin = toState.name === "login";
if(isLogin){
return; // no need to redirect
}
});
});
我发现最好的方法是$viewContentLoaded
:
faraWorkspaceApp.run(function ($rootScope, $location, $state, $templateCache) {
$rootScope.$on('$viewContentLoaded', function (e) {
FaraFunctions();
});
});
我尝试了$routeChangeStart
,但对我无效。是否显示与$routeChangeStart
相关的代码?您是否使用了app.run()
?@Satpal我知道了,它更新了我视图中的一些内容。我在我的应用程序中使用['ngRoute','ui.router']
。你可以使用stateChangeSuccessevent@Himanshu不,我不为我工作。。。