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


TypeScript CompileDirectiveMetadata.create方法代碼示例

本文整理匯總了TypeScript中@angular/compiler/src/compile_metadata.CompileDirectiveMetadata.create方法的典型用法代碼示例。如果您正苦於以下問題:TypeScript CompileDirectiveMetadata.create方法的具體用法?TypeScript CompileDirectiveMetadata.create怎麽用?TypeScript CompileDirectiveMetadata.create使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在@angular/compiler/src/compile_metadata.CompileDirectiveMetadata的用法示例。


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

示例1: beforeEach

    beforeEach(() => {
      var diDep = new CompileDiDependencyMetadata({
        isAttribute: true,
        isSelf: true,
        isHost: true,
        isSkipSelf: true,
        isOptional: true,
        token: new CompileTokenMetadata({value: 'someToken'}),
        query: new CompileQueryMetadata({
          selectors: [new CompileTokenMetadata({value: 'one'})],
          descendants: true,
          first: true,
          propertyName: 'one'
        }),
        viewQuery: new CompileQueryMetadata({
          selectors: [new CompileTokenMetadata({value: 'one'})],
          descendants: true,
          first: true,
          propertyName: 'one'
        })
      });

      fullTypeMeta = new CompileTypeMetadata(
          {name: 'SomeType', moduleUrl: 'someUrl', isHost: true, diDeps: [diDep]});
      fullTemplateMeta = new CompileTemplateMetadata({
        encapsulation: ViewEncapsulation.Emulated,
        template: '<a></a>',
        templateUrl: 'someTemplateUrl',
        styles: ['someStyle'],
        styleUrls: ['someStyleUrl'],
        animations: [new CompileAnimationEntryMetadata(
            'animation',
            [new CompileAnimationStateTransitionMetadata(
                '* => *', new CompileAnimationSequenceMetadata([
                  new CompileAnimationStyleMetadata(0, [{'opacity': 0}]),
                  new CompileAnimationAnimateMetadata(
                      1000, new CompileAnimationStyleMetadata(0, [{'opacity': 1}]))
                ]))])],
        ngContentSelectors: ['*']
      });
      fullDirectiveMeta = CompileDirectiveMetadata.create({
        selector: 'someSelector',
        isComponent: true,
        type: fullTypeMeta,
        template: fullTemplateMeta,
        changeDetection: ChangeDetectionStrategy.Default,
        inputs: ['someProp'],
        outputs: ['someEvent'],
        host: {'(event1)': 'handler1', '[prop1]': 'expr1', 'attr1': 'attrValue2'},
        lifecycleHooks: [LifecycleHooks.OnChanges],
        providers: [new CompileProviderMetadata({
          token: new CompileTokenMetadata({value: 'token'}),
          multi: true,
          useClass: fullTypeMeta,
          useExisting: new CompileTokenMetadata({
            identifier: new CompileIdentifierMetadata({name: 'someName'}),
            identifierIsInstance: true
          }),
          useFactory: new CompileFactoryMetadata({name: 'someName', diDeps: [diDep]}),
          useValue: 'someValue',
        })],
        viewProviders: [new CompileProviderMetadata({
          token: new CompileTokenMetadata({value: 'token'}),
          useClass: fullTypeMeta,
          useExisting: new CompileTokenMetadata(
              {identifier: new CompileIdentifierMetadata({name: 'someName'})}),
          useFactory: new CompileFactoryMetadata({name: 'someName', diDeps: [diDep]}),
          useValue: 'someValue'
        })],
        queries: [new CompileQueryMetadata({
          selectors: [new CompileTokenMetadata({value: 'selector'})],
          descendants: true,
          first: false,
          propertyName: 'prop',
          read: new CompileTokenMetadata({value: 'readToken'})
        })],
        viewQueries: [new CompileQueryMetadata({
          selectors: [new CompileTokenMetadata({value: 'selector'})],
          descendants: true,
          first: false,
          propertyName: 'prop',
          read: new CompileTokenMetadata({value: 'readToken'})
        })]
      });

    });
開發者ID:Brantner,項目名稱:angular,代碼行數:86,代碼來源:compile_metadata_spec.ts

示例2: CompileTypeMetadata

import {IS_DART, isPresent, print} from '../src/facade/lang';
import {MockSchemaRegistry} from '../testing/schema_registry_mock';
import {MockXHR} from '../testing/xhr_mock';


export class CompA { user: string; }

var THIS_MODULE_PATH = `asset:@angular/lib/compiler/test`;
var THIS_MODULE_URL = `${THIS_MODULE_PATH}/offline_compiler_util${MODULE_SUFFIX}`;

export var compAMetadata = CompileDirectiveMetadata.create({
  isComponent: true,
  selector: 'comp-a',
  type: new CompileTypeMetadata(
      {name: 'CompA', moduleUrl: THIS_MODULE_URL, runtime: CompA, diDeps: []}),
  template: new CompileTemplateMetadata({
    templateUrl: './offline_compiler_compa.html',
    styles: ['.redStyle { color: red; }'],
    styleUrls: ['./offline_compiler_compa.css']
  })
});

function _createOfflineCompiler(xhr: MockXHR, emitter: OutputEmitter): OfflineCompiler {
  var urlResolver = createOfflineCompileUrlResolver();
  xhr.when(`${THIS_MODULE_PATH}/offline_compiler_compa.html`, 'Hello World {{user}}!');
  var htmlParser = new HtmlParser();
  var config = new CompilerConfig({genDebugInfo: true, useJit: true});
  var normalizer = new DirectiveNormalizer(xhr, urlResolver, htmlParser, config);
  return new OfflineCompiler(
      normalizer,
      new TemplateParser(
開發者ID:Redface,項目名稱:angular,代碼行數:31,代碼來源:offline_compiler_util.ts

示例3: it

 it('should serialize with no data', () => {
   var empty = CompileDirectiveMetadata.create();
   expect(CompileDirectiveMetadata.fromJson(empty.toJson())).toEqual(empty);
 });
開發者ID:Brantner,項目名稱:angular,代碼行數:4,代碼來源:compile_metadata_spec.ts


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