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


TypeScript collection.MapWrapper类代码示例

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


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

示例1: process

  process(parent: CompileElement, current: CompileElement, control: CompileControl) {
    var attrs = current.attrs();
    var classList = current.classList();

    var cssSelector = new CssSelector();
    var nodeName = DOM.nodeName(current.element);
    cssSelector.setElement(nodeName);
    for (var i = 0; i < classList.length; i++) {
      cssSelector.addClassName(classList[i]);
    }

    MapWrapper.forEach(attrs,
                       (attrValue, attrName) => { cssSelector.addAttribute(attrName, attrValue); });

    var componentDirective;
    var foundDirectiveIndices = [];
    var elementBinder = null;
    this._selectorMatcher.match(cssSelector, (selector, directiveIndex) => {
      elementBinder = current.bindElement();
      var directive = this._directives[directiveIndex];
      if (directive.type === DirectiveMetadata.COMPONENT_TYPE) {
        // components need to go first, so it is easier to locate them in the result.
        ListWrapper.insert(foundDirectiveIndices, 0, directiveIndex);
        if (isPresent(componentDirective)) {
          throw new BaseException(
              `Only one component directive is allowed per element - check ${current.elementDescription}`);
        }
        componentDirective = directive;
        elementBinder.setComponentId(directive.id);
      } else {
        ListWrapper.push(foundDirectiveIndices, directiveIndex);
      }
    });
    ListWrapper.forEach(foundDirectiveIndices, (directiveIndex) => {
      var directive = this._directives[directiveIndex];
      var directiveBinderBuilder = elementBinder.bindDirective(directiveIndex);
      current.compileChildren = current.compileChildren && directive.compileChildren;
      if (isPresent(directive.properties)) {
        ListWrapper.forEach(directive.properties, (bindConfig) => {
          this._bindDirectiveProperty(bindConfig, current, directiveBinderBuilder);
        });
      }
      if (isPresent(directive.hostListeners)) {
        MapWrapper.forEach(directive.hostListeners, (action, eventName) => {
          this._bindDirectiveEvent(eventName, action, current, directiveBinderBuilder);
        });
      }
      if (isPresent(directive.hostActions)) {
        MapWrapper.forEach(directive.hostActions, (action, actionName) => {
          this._bindHostAction(actionName, action, current, directiveBinderBuilder);
        });
      }
      if (isPresent(directive.hostProperties)) {
        MapWrapper.forEach(directive.hostProperties, (hostPropertyName, directivePropertyName) => {
          this._bindHostProperty(hostPropertyName, directivePropertyName, current,
                                 directiveBinderBuilder);
        });
      }
      if (isPresent(directive.hostAttributes)) {
        MapWrapper.forEach(directive.hostAttributes, (hostAttrValue, hostAttrName) => {
          this._addHostAttribute(hostAttrName, hostAttrValue, current);
        });
      }
      if (isPresent(directive.readAttributes)) {
        ListWrapper.forEach(directive.readAttributes,
                            (attrName) => { elementBinder.readAttribute(attrName); });
      }
    });
  }
开发者ID:CADBOT,项目名称:angular,代码行数:69,代码来源:directive_parser.ts

示例2: constructor

 constructor() {
   this._cache = MapWrapper.create();
 }
开发者ID:tavwizard,项目名称:angular,代码行数:3,代码来源:template_resolver.ts

示例3: process

 process(parent: CompileElement, current: CompileElement, control: CompileControl) {
   var attributeMap = DOM.attributeMap(current.element);
   if (MapWrapper.contains(attributeMap, 'ignore-current')) {
     control.ignoreCurrentElement();
   }
 }
开发者ID:amzinino,项目名称:angular,代码行数:6,代码来源:pipeline_spec.ts

示例4: createView

 function createView() { return new AppView(null, createProtoView(), MapWrapper.create()); }
开发者ID:188799958,项目名称:angular,代码行数:1,代码来源:view_container_ref_spec.ts

示例5: constructor

  constructor() {
    this._applications = MapWrapper.create();

    getTestabilityModule.GetTestability.addToWindow(this);
  }
开发者ID:188799958,项目名称:angular,代码行数:5,代码来源:testability.ts

示例6: bindEvent

 bindEvent(name, expression) {
   MapWrapper.set(this.eventBindings, name, expression);
 }
开发者ID:gdi2290,项目名称:sample-Angular2,代码行数:3,代码来源:proto_view_builder.ts

示例7: bindVariable

 bindVariable(name, value) {
   MapWrapper.set(this.variableBindings, value, name);
 }
开发者ID:gdi2290,项目名称:sample-Angular2,代码行数:3,代码来源:proto_view_builder.ts

示例8:

 MapWrapper.forEach(renderElementBinder.variableBindings, (mappedName, varName) => {
   MapWrapper.set(protoView.protoLocals, mappedName, null);
 });
开发者ID:amzinino,项目名称:angular,代码行数:3,代码来源:proto_view_factory.ts

示例9: _findDirectiveIndexByExportAs

 MapWrapper.forEach(renderElementBinder.variableBindings, (templateName, exportAs) => {
   var dirIndex = _findDirectiveIndexByExportAs(renderElementBinder, directiveBindings, exportAs);
   MapWrapper.set(directiveVariableBindings, templateName, dirIndex);
 });
开发者ID:amzinino,项目名称:angular,代码行数:4,代码来源:proto_view_factory.ts


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