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


TypeScript change_detection.BindingRecord類代碼示例

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


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

示例1: _createDirectiveRecords

  _createDirectiveRecords(bindings: List<BindingRecord>, boundElementIndex: number,
                          directiveBinders: List<renderApi.DirectiveBinder>,
                          allDirectiveMetadatas: List<renderApi.DirectiveMetadata>) {
    for (var i = 0; i < directiveBinders.length; i++) {
      var directiveBinder = directiveBinders[i];
      var directiveMetadata = allDirectiveMetadatas[directiveBinder.directiveIndex];
      var directiveRecord = this._getDirectiveRecord(boundElementIndex, i, directiveMetadata);

      // directive properties
      MapWrapper.forEach(directiveBinder.propertyBindings, (astWithSource, propertyName) => {
        // TODO: these setters should eventually be created by change detection, to make
        // it monomorphic!
        var setter = reflector.setter(propertyName);
        ListWrapper.push(bindings, BindingRecord.createForDirective(astWithSource, propertyName,
                                                                    setter, directiveRecord));
      });

      if (directiveRecord.callOnChange) {
        ListWrapper.push(bindings, BindingRecord.createDirectiveOnChange(directiveRecord));
      }
      if (directiveRecord.callOnInit) {
        ListWrapper.push(bindings, BindingRecord.createDirectiveOnInit(directiveRecord));
      }
      if (directiveRecord.callOnCheck) {
        ListWrapper.push(bindings, BindingRecord.createDirectiveOnCheck(directiveRecord));
      }

      // host properties
      MapWrapper.forEach(directiveBinder.hostPropertyBindings, (astWithSource, propertyName) => {
        var dirIndex = new DirectiveIndex(boundElementIndex, i);
        ListWrapper.push(
            bindings, BindingRecord.createForHostProperty(dirIndex, astWithSource, propertyName));
      });
    }
  }
開發者ID:SnackyPete,項目名稱:angular,代碼行數:35,代碼來源:proto_view_factory.ts

示例2:

 MapWrapper.forEach(directiveBinder.propertyBindings, (astWithSource, propertyName) => {
   // TODO: these setters should eventually be created by change detection, to make
   // it monomorphic!
   var setter = reflector.setter(propertyName);
   ListWrapper.push(bindings, BindingRecord.createForDirective(astWithSource, propertyName,
                                                               setter, directiveRecord));
 });
開發者ID:CADBOT,項目名稱:angular,代碼行數:7,代碼來源:proto_view_factory.ts

示例3: notifyOnBinding

 // dispatch to element injector or text nodes based on context
 notifyOnBinding(b: BindingRecord, currentValue: any): void {
   if (b.isElement()) {
     this.renderer.setElementProperty(this.render, b.elementIndex, b.propertyName, currentValue);
   } else {
     // we know it refers to _textNodes.
     this.renderer.setText(this.render, b.elementIndex, currentValue);
   }
 }
開發者ID:188799958,項目名稱:angular,代碼行數:9,代碼來源:view.ts

示例4: _createChangeDetectorDefinition

function _createChangeDetectorDefinition(id: string, propName: string,
                                         expression: string): ChangeDetectorDefinition {
  var ast = _parser.parseBinding(expression, 'location');
  var bindingRecords = [BindingRecord.createForElement(ast, 0, propName)];

  var strategy = null;
  var variableBindings = [];
  var directiveRecords = [];
  return new ChangeDetectorDefinition(id, strategy, variableBindings, bindingRecords,
                                      directiveRecords);
}
開發者ID:SnackyPete,項目名稱:angular,代碼行數:11,代碼來源:simple_watch_config.ts

示例5: _createBindingRecords

function _createBindingRecords(expression: string): List<BindingRecord> {
  reflector.reflectionCapabilities = new ReflectionCapabilities();
  var ast = _parser.parseBinding(expression, 'location');
  return [BindingRecord.createForElement(ast, 0, PROP_NAME)];
}
開發者ID:greenietea,項目名稱:angular,代碼行數:5,代碼來源:simple_watch_config.ts

示例6: DirectiveIndex

 MapWrapper.forEach(directiveBinder.hostPropertyBindings, (astWithSource, propertyName) => {
   var dirIndex = new DirectiveIndex(boundElementIndex, i);
   ListWrapper.push(
       bindings, BindingRecord.createForHostProperty(dirIndex, astWithSource, propertyName));
 });
開發者ID:CADBOT,項目名稱:angular,代碼行數:5,代碼來源:proto_view_factory.ts


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