Пример #1
0
 updateMarkup: function (nextMarkup) {
   updateDepth++;
   var errorThrown = true;
   try {
     var prevChildren = this._renderedChildren;
     // Remove any rendered children.
     ReactChildReconciler.unmountChildren(prevChildren);
     for (var name in prevChildren) {
       if (prevChildren.hasOwnProperty(name)) {
         this._unmountChildByName(prevChildren[name], name);
       }
     }
     this.setMarkup(nextMarkup);
     errorThrown = false;
   } finally {
     updateDepth--;
     if (!updateDepth) {
       if (errorThrown) {
         clearQueue();
       } else {
         processQueue();
       }
     }
   }
 },
Пример #2
0
 updateTextContent: function (nextContent) {
   updateDepth++;
   var errorThrown = true;
   try {
     var prevChildren = this._renderedChildren;
     // Remove any rendered children.
     ReactChildReconciler.unmountChildren(prevChildren);
     // TODO: The setTextContent operation should be enough
     for (var name in prevChildren) {
       if (prevChildren.hasOwnProperty(name)) {
         this._unmountChild(prevChildren[name]);
       }
     }
     // Set new text content.
     this.setTextContent(nextContent);
     errorThrown = false;
   } finally {
     updateDepth--;
     if (!updateDepth) {
       if (errorThrown) {
         clearQueue();
       } else {
         processQueue();
       }
     }
   }
 },
Пример #3
0
 unmountChildren: function () {
   var renderedChildren = this._renderedChildren;
   ReactChildReconciler.unmountChildren(renderedChildren);
   this._renderedChildren = null;
 },