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


TypeScript runtime_metadata.RuntimeMetadataResolver類代碼示例

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


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

示例1: inject

 inject([RuntimeMetadataResolver], (resolver: RuntimeMetadataResolver) => {
   expect(resolver.getViewDirectivesMetadata(ComponentWithEverything))
       .toEqual([
         resolver.getDirectiveMetadata(ADirective),
         resolver.getDirectiveMetadata(SomeDirective)
       ]);
 }));
開發者ID:bet4vlom,項目名稱:angular,代碼行數:7,代碼來源:runtime_metadata_spec.ts

示例2: inject

 inject([RuntimeMetadataResolver], (resolver: RuntimeMetadataResolver) => {
   var meta = resolver.getDirectiveMetadata(ComponentWithEverything);
   expect(meta.selector).toEqual('someSelector');
   expect(meta.exportAs).toEqual('someExportAs');
   expect(meta.isComponent).toBe(true);
   expect(meta.type.runtime).toBe(ComponentWithEverything);
   expect(meta.type.name).toEqual(stringify(ComponentWithEverything));
   expect(meta.type.moduleUrl).toEqual(`package:someModuleId${MODULE_SUFFIX}`);
   expect(meta.lifecycleHooks).toEqual(LIFECYCLE_HOOKS_VALUES);
   expect(meta.changeDetection).toBe(ChangeDetectionStrategy.CheckAlways);
   expect(meta.inputs).toEqual({'someProp': 'someProp'});
   expect(meta.outputs).toEqual({'someEvent': 'someEvent'});
   expect(meta.hostListeners).toEqual({'someHostListener': 'someHostListenerExpr'});
   expect(meta.hostProperties).toEqual({'someHostProp': 'someHostPropExpr'});
   expect(meta.hostAttributes).toEqual({'someHostAttr': 'someHostAttrValue'});
   expect(meta.template.encapsulation).toBe(ViewEncapsulation.Emulated);
   expect(meta.template.styles).toEqual(['someStyle']);
   expect(meta.template.styleUrls).toEqual(['someStyleUrl']);
   expect(meta.template.template).toEqual('someTemplate');
   expect(meta.template.templateUrl).toEqual('someTemplateUrl');
 }));
開發者ID:AwelEshetu,項目名稱:angular,代碼行數:21,代碼來源:runtime_metadata_spec.ts

示例3: inject

 inject([RuntimeMetadataResolver], (resolver: RuntimeMetadataResolver) => {
   expect(resolver.getViewDirectivesMetadata(ComponentWithEverything))
       .toContain(resolver.getDirectiveMetadata(SomeDirective));
 }));
開發者ID:ASLA1899,項目名稱:angular,代碼行數:4,代碼來源:runtime_metadata_spec.ts

示例4: describe

  describe('TemplateCompiler', () => {
    var compiler: TemplateCompiler;
    var runtimeMetadataResolver: RuntimeMetadataResolver;

    beforeEachBindings(() => TEST_PROVIDERS);
    beforeEach(inject([TemplateCompiler, RuntimeMetadataResolver],
                      (_compiler, _runtimeMetadataResolver) => {
                        compiler = _compiler;
                        runtimeMetadataResolver = _runtimeMetadataResolver;
                      }));

    describe('compile templates', () => {

      function runTests(compile) {
        it('should throw for non components', inject([AsyncTestCompleter], (async) => {
             PromiseWrapper.catchError(PromiseWrapper.wrap(() => compile([NonComponent])), (error) => {
               expect(error.message)
                   .toEqual(
                       `Could not compile '${stringify(NonComponent)}' because it is not a component.`);
               async.done();
             });
           }));

        it('should compile host components', inject([AsyncTestCompleter], (async) => {
             compile([CompWithBindingsAndStyles])
                 .then((humanizedTemplate) => {
                   expect(humanizedTemplate['styles']).toEqual([]);
                   expect(humanizedTemplate['commands'][0]).toEqual('<comp-a>');
                   expect(humanizedTemplate['cd']).toEqual(['elementProperty(title)=someDirValue']);

                   async.done();
                 });
           }));

        it('should compile nested components', inject([AsyncTestCompleter], (async) => {
             compile([CompWithBindingsAndStyles])
                 .then((humanizedTemplate) => {
                   var nestedTemplate = humanizedTemplate['commands'][1];
                   expect(nestedTemplate['styles']).toEqual(['div {color: red}']);
                   expect(nestedTemplate['commands'][0]).toEqual('<a>');
                   expect(nestedTemplate['cd']).toEqual(['elementProperty(href)=someCtxValue']);

                   async.done();
                 });
           }));

        it('should compile recursive components', inject([AsyncTestCompleter], (async) => {
             compile([TreeComp])
                 .then((humanizedTemplate) => {
                   expect(humanizedTemplate['commands'][0]).toEqual('<tree>');
                   expect(humanizedTemplate['commands'][1]['commands'][0]).toEqual('<tree>');
                   expect(humanizedTemplate['commands'][1]['commands'][1]['commands'][0])
                       .toEqual('<tree>');

                   async.done();
                 });
           }));

        it('should pass the right change detector to embedded templates',
           inject([AsyncTestCompleter], (async) => {
             compile([CompWithEmbeddedTemplate])
                 .then((humanizedTemplate) => {
                   expect(humanizedTemplate['commands'][1]['commands'][0]).toEqual('<template>');
                   expect(humanizedTemplate['commands'][1]['commands'][1]['cd'])
                       .toEqual(['elementProperty(href)=someCtxValue']);

                   async.done();
                 });
           }));
      }

      xdescribe('compileHostComponentRuntime', () => {
        function compile(components: Type[]): Promise<any[]> {
          return compiler.compileHostComponentRuntime(components[0])
              .then((compiledHostTemplate) => humanizeTemplate(compiledHostTemplate.template));
        }

        runTests(compile);

        it('should cache components for parallel requests',
           inject([AsyncTestCompleter, XHR], (async, xhr: MockXHR) => {
             xhr.expect('package:angular2/test/compiler/compUrl.html', 'a');
             PromiseWrapper.all([compile([CompWithTemplateUrl]), compile([CompWithTemplateUrl])])
                 .then((humanizedTemplates) => {
                   expect(humanizedTemplates[0]['commands'][1]['commands']).toEqual(['#text(a)']);
                   expect(humanizedTemplates[1]['commands'][1]['commands']).toEqual(['#text(a)']);

                   async.done();
                 });
             xhr.flush();
           }));

        it('should cache components for sequential requests',
           inject([AsyncTestCompleter, XHR], (async, xhr: MockXHR) => {
             xhr.expect('package:angular2/test/compiler/compUrl.html', 'a');
             compile([CompWithTemplateUrl])
                 .then((humanizedTemplate0) => {
                   return compile([CompWithTemplateUrl])
                       .then((humanizedTemplate1) => {
                         expect(humanizedTemplate0['commands'][1]['commands'])
//.........這裏部分代碼省略.........
開發者ID:TedSander,項目名稱:angular,代碼行數:101,代碼來源:template_compiler_spec.ts

示例5: normalizeComponent

 function normalizeComponent(
     component: Type): Promise<NormalizedComponentWithViewDirectives> {
   var compAndViewDirMetas = [runtimeMetadataResolver.getMetadata(component)].concat(
       runtimeMetadataResolver.getViewDirectivesMetadata(component));
   return PromiseWrapper.all(compAndViewDirMetas.map(
                                 meta => compiler.normalizeDirectiveMetadata(meta)))
       .then((normalizedCompAndViewDirMetas: CompileDirectiveMetadata[]) =>
                 new NormalizedComponentWithViewDirectives(
                     normalizedCompAndViewDirMetas[0],
                     normalizedCompAndViewDirMetas.slice(1)));
 }
開發者ID:TedSander,項目名稱:angular,代碼行數:11,代碼來源:template_compiler_spec.ts

示例6: inject

 inject([AsyncTestCompleter], (async) => {
   var meta = runtimeMetadataResolver.getMetadata(NonComponent);
   compiler.normalizeDirectiveMetadata(meta).then(normMeta => {
     expect(normMeta).toBe(meta);
     async.done();
   });
 }));
開發者ID:TedSander,項目名稱:angular,代碼行數:7,代碼來源:template_compiler_spec.ts

示例7: it

 it('should copy all the other fields', inject([AsyncTestCompleter], (async) => {
      var meta = runtimeMetadataResolver.getMetadata(CompWithBindingsAndStyles);
      compiler.normalizeDirectiveMetadata(meta).then((normMeta: CompileDirectiveMetadata) => {
        expect(normMeta.type).toEqual(meta.type);
        expect(normMeta.isComponent).toEqual(meta.isComponent);
        expect(normMeta.dynamicLoadable).toEqual(meta.dynamicLoadable);
        expect(normMeta.selector).toEqual(meta.selector);
        expect(normMeta.exportAs).toEqual(meta.exportAs);
        expect(normMeta.changeDetection).toEqual(meta.changeDetection);
        expect(normMeta.inputs).toEqual(meta.inputs);
        expect(normMeta.outputs).toEqual(meta.outputs);
        expect(normMeta.hostListeners).toEqual(meta.hostListeners);
        expect(normMeta.hostProperties).toEqual(meta.hostProperties);
        expect(normMeta.hostAttributes).toEqual(meta.hostAttributes);
        expect(normMeta.lifecycleHooks).toEqual(meta.lifecycleHooks);
        async.done();
      });
    }));
開發者ID:TedSander,項目名稱:angular,代碼行數:18,代碼來源:template_compiler_spec.ts

示例8: expect

 expect(() => resolver.getDirectiveMetadata(MalformedStylesComponent))
開發者ID:1186792881,項目名稱:angular,代碼行數:1,代碼來源:runtime_metadata_spec.ts


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