Angularjs   发布时间:2022-04-20  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了什么是app.run(appRun);用于AngularJS?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个app.run(appRun);在我的代码中,但我不清楚为什么需要它. appRun函数有一些基本的东西,但看起来没有任何东西不能在appController中.

我已经有一个app控制器在这里使用:

<html lang="en" class="light"
      id="ngApp"
      ng-app="app"
      ng-cloak
      ng-controller="appController"

希望有些人可以帮我解释一下这个区别.谢谢

解决方法

您可以在文档中找到有关app.run()模块的详细信息 here.

据我所知,在配置完所有服务并创建了注入器之后执行了run方法.我们将这些东西放在运行块中,这对于进行单元测试并不是那么容易.

以下是我的网站示例:
这个例子基于django和angularjs网站,在这里我配置了我的应用程序.

var AppName = angular.module('AppName',[

    'ngRoute','ngCookies',]);

// use for cookie
AppName.provider('myCSRF',[function(){

    var headerName = 'X-CSRFToken';
    var cookiename = 'csrftoken';
    var allowedMethods = ['GET'];

    this.setHeaderName = function(n) {
       headerName = n;
    }
    this.setCookiename = function(n) {
       cookiename = n;
    }

    this.setAllowedMethods = function(n) {
       allowedMethods = n;
    }
    this.$get = ['$cookies',function($cookies){
    return {
        'request': function(config) {
        if(allowedMethods.indexOf(config.method) === -1) {
            config.headers[headerName] = $cookies[cookiename];

            }
        return config;
    }
    }
    }];
}])


AppName.config(['$routeProvider','$httpProvider','$interpolateProvider',function($routeProvider,$httpProvider,$interpolateProvider) {

    $interpolateProvider.startSymbol('{$');
    $interpolateProvider.endSymbol('$}');

    $httpProvider.interceptors.push('myCSRF');
    $httpProvider.defaults.xsrfCookiename = 'csrftoken'; 
    $httpProvider.defaults.xsrfHeaderName = 'X-CSRFToken';
    $httpProvider.defaults.withCredentials = true;

    $routeProvider
    .when('/anyPage',{
        templateUrl: '/anyPage/'
    })
    .otherwise({
        redirectTo: '/'
    })


}])


AppName.run(['$http','$cookies',function($http,$cookies) {

    $http.defaults.headers.post['X-CSRFToken'] = $cookies.csrftoken;

}]);

大佬总结

以上是大佬教程为你收集整理的什么是app.run(appRun);用于AngularJS?全部内容,希望文章能够帮你解决什么是app.run(appRun);用于AngularJS?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。