From 93f6fc9eebd1884e03a56a9cc2aebd3c69d8a2d5 Mon Sep 17 00:00:00 2001 From: Jim Date: Tue, 17 Feb 2015 11:22:13 -0800 Subject: [PATCH] Allow rendering into document fragments. Fixes #840 --- src/browser/ui/ReactMount.js | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/browser/ui/ReactMount.js b/src/browser/ui/ReactMount.js index 4d206d0e93..3fe9bb4137 100644 --- a/src/browser/ui/ReactMount.js +++ b/src/browser/ui/ReactMount.js @@ -41,6 +41,7 @@ var nodeCache = {}; var ELEMENT_NODE_TYPE = 1; var DOC_NODE_TYPE = 9; +var DOCUMENT_FRAGMENT_NODE_TYPE = 11; /** Mapping from reactRootID to React component instance. */ var instancesByReactRootID = {}; @@ -355,7 +356,8 @@ var ReactMount = { invariant( container && ( container.nodeType === ELEMENT_NODE_TYPE || - container.nodeType === DOC_NODE_TYPE + container.nodeType === DOC_NODE_TYPE || + container.nodeType === DOCUMENT_FRAGMENT_NODE_TYPE ), '_registerComponent(...): Target container is not a DOM element.' ); @@ -578,7 +580,8 @@ var ReactMount = { invariant( container && ( container.nodeType === ELEMENT_NODE_TYPE || - container.nodeType === DOC_NODE_TYPE + container.nodeType === DOC_NODE_TYPE || + container.nodeType === DOCUMENT_FRAGMENT_NODE_TYPE ), 'unmountComponentAtNode(...): Target container is not a DOM element.' ); @@ -790,7 +793,8 @@ var ReactMount = { invariant( container && ( container.nodeType === ELEMENT_NODE_TYPE || - container.nodeType === DOC_NODE_TYPE + container.nodeType === DOC_NODE_TYPE || + container.nodeType === DOCUMENT_FRAGMENT_NODE_TYPE ), 'mountComponentIntoNode(...): Target container is not valid.' );