angular service provider

关于  angular service factory  provider 方面有很多,我也来写一篇加深下印象。

provider 是一切方法的基础,所以功能也最强,provider 用来定义一个可以被注入的服务,其实就是一个依赖注入的模块。

已ng-route 为例

var ngRouteModule = angular.module(‘ngRoute‘, [‘ng‘]). provider(‘$route‘, $RouteProvider);

等价  AngularJS在模块对象上直接暴露了provider方法

    ngRouteModule.config(["$provide",function($provide) {
        $provide.provider(‘$route‘, $RouteProvider);
    }]) 

通过provider ,定义了$route服务。

通过provider 定义的服务会生成一个serviceProvider    例

$route服务$routeProvider, $location服务$locationProvider, $http服务$httpProvider ,$controller服务$controllerProvider

config阶段,只有provider能被注入(除了两个例外$provide和$injector)。此时可以通过serviceProvider 来设置服务中的一些私有属性 ,传一些参数,在服务模块调用之前。

例如:

 app.config([‘$routeProvider‘, function ($routeProvider) {

        $routeProvider.when(‘/view1‘, {
            template:"this is v1 "
            });

        $routeProvider.when(‘/view2‘, { //详情页面
          template:"<div class=‘view2‘>this is view 2</div> "
        });
        $routeProvider.when(‘/view3‘, { //详情页面
            templateUrl: ‘all2.html‘
        });
}])

设置 $route  服务中的routes  路由列表。

时间: 2024-11-05 17:34:27

angular service provider的相关文章

angularjs factory,service,provider 自定义服务的不同

angularjs框架学了有一段时间了,感觉很好用.可以把angularjs的app理解成php的class,controller是控制器,而内置服务和自定义服务就可以理解成models了.angularjs的内置服务多,例如:$scope,$rootScope,$http,$q,$resource,$routeProvider等等,下面来说一下怎么自定义服务 一,factory,service,provider自定义服务,services.js 'use strict'; /* Service

SOA Integration Repository Error:Service Provider Access is not available.

在Oracle EBS Integration Repository中,打开一个Webservice,报了一个警告. 英文: Warning Service Provider Access is not available. You may not be able to see complete information about the service. Please view Service Provider logs for more details 中文: 警告 服务供应商访问权限不可用

Introduction to the Service Provider Interfaces--官方文档

地址:https://docs.oracle.com/javase/tutorial/sound/SPI-intro.html What Are Services? Services are units of sound-handling functionality that are automatically available when an application program makes use of an implementation of the Java Sound API. T

Azure Pack和SCVMM集成- 安装Service Provider foundation

1.安装角色和功能 安装如图所示的组件 打开SCVMM安装程序,点击Service Provider Foundation 配置数据库 添加证书 输入服务账户 安装WEB服务

angularjs 中 Factory,Service,Provider 之间的区别

本片文章是使用了 angularjs 中使用 service 在controller 之间 share 对象和数据 的code(http://jsfiddle.net/kn46u0uj/1/) 来进行演示 Factory,Service,Provider 之间的区别 1. Factory factory('dataService',function(){ return { golbal_sitename:"this is the shared value", sayHello:func

Angular Service入门

1.Angular内置service Angular为了方便开发者开发,本身提供了非常多的内置服务.可以通过https://docs.angularjs.org/api/ng/service查看AngularJS提供的内置服务.在企业级开发中,常用的服务有以下这些: $cacheFactory 缓存服务 $compile 编译服务 $filter 通过 $filter 服务可以格式化输出数据,也可以对数据进行过滤操作 $http AngularJS内置的核心的服务,主要和后台请求相关 $loca

Azure Pack和SCVMM集成- 配置Service Provider foundation

打开Azure pack ,点击VM云并注册Service Provider foundation 输入SCVMM计算机名称 创建计划 创建虚拟机云 注册Service Management Automation

angular service/directive

<html class=" js cssanimations csstransitions" ng-app="phonecatApp" > <head> <title>{{title}}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta name=&

Java SPI(Service Provider Interface)

SPI 全称为 (Service Provider Interface) ,是JDK内置的一种服务提供发现机制. 目前有不少框架用它来做服务的扩展发现, 简单来说,它就是一种动态替换发现的机制, 举个例子来说,有个接口,想运行时动态的给它添加实现,你只需要添加一个实现. 当服务的提供者提供了一种接口的实现之后,需要在classpath下的META-INF/services/目录里创建一个以服务接口命名的文件,这个文件里的内容就是这个接口的具体的实现类.当其他的程序需要这个服务的时候,就可以通过查