當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript angular.Injector類代碼示例

本文整理匯總了TypeScript中angular.Injector的典型用法代碼示例。如果您正苦於以下問題:TypeScript Injector類的具體用法?TypeScript Injector怎麽用?TypeScript Injector使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


在下文中一共展示了Injector類的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: describe

describe('auto/$injector', () => {
  let injector: Injector

  class CustomService {}

  function MyFn($controller, $filter) { }

  class MyClass { constructor($controller, $filter) {} }

  beforeEach(() => {
    angular.module('custom', ['ng'])
      .value('$jsonpCallbacks', {})
      .value('$rootElement', { on: angular.noop })
      .service('customService', CustomService)
    
    injector = angular.injector(['custom'])
  })

  it('.get should have right parameters', () => {
    injector.get('customService')
    injector.get('customService', 'nobody')

    injector.get<number>('customService')
    injector.get<number>('customService', 'nobody')
  })

  it('.get should have right return type', () => {
    // NOTICE: Manual testing in VSCode with mouse hover

    // Should have type of their own
    const $injector = injector.get('$injector')
    const $anchorScroll = injector.get('$anchorScroll')
    const $animate = injector.get('$animate')
    const $animateCss = injector.get('$animateCss')
    const $cacheFactory = injector.get('$cacheFactory')
    const $compile = injector.get('$compile')
    const $controller = injector.get('$controller')
    const $document = injector.get('$document')
    const $exceptionHandler = injector.get('$exceptionHandler')
    const $filter = injector.get('$filter')
    const $http = injector.get('$http')
    const $httpBackend = injector.get('$httpBackend')
    const $httpParamSerializer = injector.get('$httpParamSerializer')
    const $httpParamSerializerJQLike = injector.get('$httpParamSerializerJQLike')
    const $interpolate = injector.get('$interpolate')
    const $interval = injector.get('$interval')
    const $jsonpCallbacks = injector.get('$jsonpCallbacks')
    const $locale = injector.get('$locale')
    const $location = injector.get('$location')
    const $log = injector.get('$log')
    const $parse = injector.get('$parse')
    const $q = injector.get('$q')
    const $rootElement = injector.get('$rootElement')
    const $rootScope = injector.get('$rootScope')
    const $sce = injector.get('$sce')
    const $sceDelegate = injector.get('$sceDelegate')
    const $templateCache = injector.get('$templateCache')
    const $templateRequest = injector.get('$templateRequest')
    const $timeout = injector.get('$timeout')
    const $window = injector.get('$window')
    const $xhrFactory = injector.get('$xhrFactory')

    // Should have type of generic
    const customService = injector.get<CustomService>('customService')
    expect(customService instanceof CustomService).toBeTruthy()

    // Should have type of any
    const anyService = injector.get('customService')
    expect(customService instanceof CustomService).toBeTruthy()
  })

  it('.invoke should have right parameters', () => {
    injector.invoke((customService: CustomService) => customService)
    injector.invoke((customService: CustomService) => customService, {})
    injector.invoke((customService: CustomService) => customService, {}, { customService: {} })
    injector.invoke(['customService', (customService: CustomService) => customService])
    injector.invoke(['customService', (customService: CustomService) => customService], {})
    injector.invoke(['customService', (customService: CustomService) => customService], {}, { customService: {} })

    injector.invoke<CustomService>((customService: CustomService) => customService)
    injector.invoke<CustomService>((customService: CustomService) => customService, {})
    injector.invoke<CustomService>((customService: CustomService) => customService, {}, { customService: {} })
    injector.invoke<CustomService>(['customService', (customService: CustomService) => customService])
    injector.invoke<CustomService>(['customService', (customService: CustomService) => customService], {})
    injector.invoke<CustomService>(['customService', (customService: CustomService) => customService], {}, { customService: {} })
  })

  it('.invoke should have right return type', () => {
    // NOTICE: Manual testing in VSCode with mouse hover

    // Should have type of CustomService
    const customService0 = injector.invoke((customService: CustomService) => customService)
    expect(customService0 instanceof CustomService).toBeTruthy()
    const customService1 = injector.invoke(['customService', (customService: CustomService) => customService])
    expect(customService1 instanceof CustomService).toBeTruthy()

    const customService2 = injector.invoke<CustomService>((customService: CustomService) => customService)
    const customService3 = injector.invoke<CustomService>(['customService', (customService: CustomService) => customService])
  })

//.........這裏部分代碼省略.........
開發者ID:trotyl,項目名稱:typed-angular,代碼行數:101,代碼來源:injector.spec.ts

示例2: it

  it('.get should have right parameters', () => {
    injector.get('customService')
    injector.get('customService', 'nobody')

    injector.get<number>('customService')
    injector.get<number>('customService', 'nobody')
  })
開發者ID:trotyl,項目名稱:typed-angular,代碼行數:7,代碼來源:injector.spec.ts


注:本文中的angular.Injector類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。