fix(renderer): handle empty fragments correctly

Closes #3100
This commit is contained in:
Tobias Bosch
2015-07-16 15:18:02 -07:00
parent 116b64de25
commit 61c73576c8
2 changed files with 32 additions and 3 deletions

View File

@ -83,8 +83,10 @@ export class DomRenderer extends Renderer {
attachFragmentAfterFragment(previousFragmentRef: RenderFragmentRef,
fragmentRef: RenderFragmentRef) {
var previousFragmentNodes = resolveInternalDomFragment(previousFragmentRef);
var sibling = previousFragmentNodes[previousFragmentNodes.length - 1];
moveNodesAfterSibling(sibling, resolveInternalDomFragment(fragmentRef));
if (previousFragmentNodes.length > 0) {
var sibling = previousFragmentNodes[previousFragmentNodes.length - 1];
moveNodesAfterSibling(sibling, resolveInternalDomFragment(fragmentRef));
}
}
attachFragmentAfterElement(elementRef: RenderElementRef, fragmentRef: RenderFragmentRef) {
@ -253,7 +255,7 @@ export class DomRenderer extends Renderer {
}
function moveNodesAfterSibling(sibling, nodes) {
if (isPresent(DOM.parentElement(sibling))) {
if (nodes.length > 0 && isPresent(DOM.parentElement(sibling))) {
for (var i = 0; i < nodes.length; i++) {
DOM.insertBefore(sibling, nodes[i]);
}