当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript template_parser.TemplateParser类代码示例

本文整理汇总了TypeScript中angular2/src/compiler/template_parser.TemplateParser的典型用法代码示例。如果您正苦于以下问题:TypeScript TemplateParser类的具体用法?TypeScript TemplateParser怎么用?TypeScript TemplateParser使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了TemplateParser类的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。

示例1: describe

  describe('ChangeDetectorCompiler', () => {
    beforeEachProviders(() => [
      TEST_PROVIDERS,
      provide(ChangeDetectorGenConfig,
              {useValue: new ChangeDetectorGenConfig(true, false, false)})
    ]);

    var parser: TemplateParser;
    var compiler: ChangeDetectionCompiler;
    beforeEachProviders(() => [
      provide(ChangeDetectorGenConfig,
              {useValue: new ChangeDetectorGenConfig(true, false, false)})
    ]);

    beforeEach(inject([TemplateParser, ChangeDetectionCompiler], (_parser, _compiler) => {
      parser = _parser;
      compiler = _compiler;
    }));

    describe('compileComponentRuntime', () => {
      function detectChanges(compiler: ChangeDetectionCompiler, template: string,
                             directives: CompileDirectiveMetadata[] = CONST_EXPR([])): string[] {
        var type =
            new CompileTypeMetadata({name: stringify(SomeComponent), moduleUrl: THIS_MODULE_URL});
        var parsedTemplate = parser.parse(template, directives, [], 'TestComp');
        var factories =
            compiler.compileComponentRuntime(type, ChangeDetectionStrategy.Default, parsedTemplate);
        return testChangeDetector(factories[0]);
      }

      it('should watch element properties', () => {
        expect(detectChanges(compiler, '<div [elProp]="someProp">'))
            .toEqual(['elementProperty(elProp)=someValue']);
      });
    });

    describe('compileComponentCodeGen', () => {
      function detectChanges(
          compiler: ChangeDetectionCompiler, template: string,
          directives: CompileDirectiveMetadata[] = CONST_EXPR([])): Promise<string[]> {
        var type =
            new CompileTypeMetadata({name: stringify(SomeComponent), moduleUrl: THIS_MODULE_URL});
        var parsedTemplate = parser.parse(template, directives, [], 'TestComp');
        var sourceExpressions =
            compiler.compileComponentCodeGen(type, ChangeDetectionStrategy.Default, parsedTemplate);
        var testableModule = createTestableModule(sourceExpressions, 0).getSourceWithImports();
        return evalModule(testableModule.source, testableModule.imports, null);
      }

      it('should watch element properties', inject([AsyncTestCompleter], (async) => {
           detectChanges(compiler, '<div [elProp]="someProp">')
               .then((value) => {
                 expect(value).toEqual(['elementProperty(elProp)=someValue']);
                 async.done();
               });

         }));
    });

  });
开发者ID:1186792881,项目名称:angular,代码行数:60,代码来源:change_detector_compiler_spec.ts

示例2: detectChanges

 function detectChanges(compiler: ChangeDetectionCompiler, template: string,
                        directives: CompileDirectiveMetadata[] = CONST_EXPR([])): string[] {
   var type =
       new CompileTypeMetadata({name: stringify(SomeComponent), moduleUrl: THIS_MODULE_URL});
   var parsedTemplate = parser.parse(template, directives, 'TestComp');
   var factories =
       compiler.compileComponentRuntime(type, ChangeDetectionStrategy.Default, parsedTemplate);
   return testChangeDetector(factories[0]);
 }
开发者ID:mixed,项目名称:angular,代码行数:9,代码来源:change_detector_compiler_spec.ts


注:本文中的angular2/src/compiler/template_parser.TemplateParser类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。