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


TypeScript static_reflector.StaticReflectorHost類代碼示例

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


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

示例1: describe

  describe('StaticReflector', () => {
    let host: StaticReflectorHost;
    let reflector: StaticReflector;

    beforeEach(() => {
      host = new MockReflectorHost();
      reflector = new StaticReflector(host);
    });

    function singleModuleSimplify(moduleContext: string, value: any) {
      return reflector.simplify(moduleContext, value, false);
    }

    function crossModuleSimplify(moduleContext: string, value: any) {
      return reflector.simplify(moduleContext, value, true);
    }

    it('should get annotations for NgFor', () => {
      let NgFor = reflector.getStaticType(
          host.resolveModule('angular2/src/common/directives/ng_for'), 'NgFor');
      let annotations = reflector.annotations(NgFor);
      expect(annotations.length).toEqual(1);
      let annotation = annotations[0];
      expect(annotation.selector).toEqual('[ngFor][ngForOf]');
      expect(annotation.inputs).toEqual(['ngForTrackBy', 'ngForOf', 'ngForTemplate']);

    });

    it('should get constructor for NgFor', () => {
      let NgFor = reflector.getStaticType(
          host.resolveModule('angular2/src/common/directives/ng_for'), 'NgFor');
      let ViewContainerRef = reflector.getStaticType(
          host.resolveModule('angular2/src/core/linker/view_container_ref'), 'ViewContainerRef');
      let TemplateRef = reflector.getStaticType(
          host.resolveModule('angular2/src/core/linker/template_ref'), 'TemplateRef');
      let IterableDiffers = reflector.getStaticType(
          host.resolveModule('angular2/src/core/change_detection/differs/iterable_differs'),
          'IterableDiffers');
      let ChangeDetectorRef = reflector.getStaticType(
          host.resolveModule('angular2/src/core/change_detection/change_detector_ref'),
          'ChangeDetectorRef');

      let parameters = reflector.parameters(NgFor);
      expect(parameters)
          .toEqual([[ViewContainerRef], [TemplateRef], [IterableDiffers], [ChangeDetectorRef]]);
    });

    it('should get annotations for HeroDetailComponent', () => {
      let HeroDetailComponent =
          reflector.getStaticType('/src/app/hero-detail.component.ts', 'HeroDetailComponent');
      let annotations = reflector.annotations(HeroDetailComponent);
      expect(annotations.length).toEqual(1);
      let annotation = annotations[0];
      expect(annotation.selector).toEqual('my-hero-detail');
      expect(annotation.directives)
          .toEqual([
            [
              reflector.getStaticType(host.resolveModule('angular2/src/common/directives/ng_for'),
                                      'NgFor')
            ]
          ]);
    });

    it('should get and empty annotation list for an unknown class', () => {
      let UnknownClass = reflector.getStaticType('/src/app/app.component.ts', 'UnknownClass');
      let annotations = reflector.annotations(UnknownClass);
      expect(annotations).toEqual([]);
    });

    it('should get propMetadata for HeroDetailComponent', () => {
      let HeroDetailComponent =
          reflector.getStaticType('/src/app/hero-detail.component.ts', 'HeroDetailComponent');
      let props = reflector.propMetadata(HeroDetailComponent);
      expect(props['hero']).toBeTruthy();
    });

    it('should get an empty object from propMetadata for an unknown class', () => {
      let UnknownClass = reflector.getStaticType('/src/app/app.component.ts', 'UnknownClass');
      let properties = reflector.propMetadata(UnknownClass);
      expect(properties).toEqual({});
    });

    it('should get empty parameters list for an unknown class ', () => {
      let UnknownClass = reflector.getStaticType('/src/app/app.component.ts', 'UnknownClass');
      let parameters = reflector.parameters(UnknownClass);
      expect(parameters).toEqual([]);
    });

    it('should simplify primitive into itself', () => {
      expect(singleModuleSimplify('', 1)).toBe(1);
      expect(singleModuleSimplify('', true)).toBe(true);
      expect(singleModuleSimplify('', "some value")).toBe("some value");
    });

    it('should simplify an array into a copy of the array',
       () => { expect(singleModuleSimplify('', [1, 2, 3])).toEqual([1, 2, 3]); });

    it('should simplify an object to a copy of the object', () => {
      let expr = {a: 1, b: 2, c: 3};
      expect(singleModuleSimplify('', expr)).toEqual(expr);
//.........這裏部分代碼省略.........
開發者ID:Zbonger,項目名稱:angular,代碼行數:101,代碼來源:static_reflector_spec.ts

示例2: it

    it('should get constructor for NgFor', () => {
      let NgFor = reflector.getStaticType(
          host.resolveModule('angular2/src/common/directives/ng_for'), 'NgFor');
      let ViewContainerRef = reflector.getStaticType(
          host.resolveModule('angular2/src/core/linker/view_container_ref'), 'ViewContainerRef');
      let TemplateRef = reflector.getStaticType(
          host.resolveModule('angular2/src/core/linker/template_ref'), 'TemplateRef');
      let IterableDiffers = reflector.getStaticType(
          host.resolveModule('angular2/src/core/change_detection/differs/iterable_differs'),
          'IterableDiffers');
      let ChangeDetectorRef = reflector.getStaticType(
          host.resolveModule('angular2/src/core/change_detection/change_detector_ref'),
          'ChangeDetectorRef');

      let parameters = reflector.parameters(NgFor);
      expect(parameters)
          .toEqual([[ViewContainerRef], [TemplateRef], [IterableDiffers], [ChangeDetectorRef]]);
    });
開發者ID:Zbonger,項目名稱:angular,代碼行數:18,代碼來源:static_reflector_spec.ts


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