feat(renderer): use a comment instead of an element when stamping out template>` elements
Originally authored by @tbosch, this reverts the revert commit
e274ff8a69
.
Closes #4805
This commit is contained in:
parent
79399e1c51
commit
194dc7da78
|
@ -19,7 +19,7 @@ var _allViewsById = new Map<number, AppView>();
|
||||||
var _nextId = 0;
|
var _nextId = 0;
|
||||||
|
|
||||||
function _setElementId(element, indices: number[]) {
|
function _setElementId(element, indices: number[]) {
|
||||||
if (isPresent(element)) {
|
if (isPresent(element) && DOM.isElementNode(element)) {
|
||||||
DOM.setData(element, NG_ID_PROPERTY, indices.join(NG_ID_SEPARATOR));
|
DOM.setData(element, NG_ID_PROPERTY, indices.join(NG_ID_SEPARATOR));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -476,6 +476,19 @@ export function main() {
|
||||||
});
|
});
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
it('should use a comment while stamping out `<template>` elements.',
|
||||||
|
inject([TestComponentBuilder, AsyncTestCompleter], (tcb: TestComponentBuilder, async) => {
|
||||||
|
tcb.overrideView(MyComp, new ViewMetadata({template: '<template></template>'}))
|
||||||
|
|
||||||
|
.createAsync(MyComp)
|
||||||
|
.then((fixture) => {
|
||||||
|
var childNodesOfWrapper = DOM.childNodes(fixture.debugElement.nativeElement);
|
||||||
|
expect(childNodesOfWrapper.length).toBe(1);
|
||||||
|
expect(DOM.isCommentNode(childNodesOfWrapper[0])).toBe(true);
|
||||||
|
async.done();
|
||||||
|
});
|
||||||
|
}));
|
||||||
|
|
||||||
it('should support template directives via `template` attribute.',
|
it('should support template directives via `template` attribute.',
|
||||||
inject([TestComponentBuilder, AsyncTestCompleter], (tcb: TestComponentBuilder, async) => {
|
inject([TestComponentBuilder, AsyncTestCompleter], (tcb: TestComponentBuilder, async) => {
|
||||||
tcb.overrideView(
|
tcb.overrideView(
|
||||||
|
|
|
@ -9,7 +9,7 @@ describe('ng2 naive infinite scroll benchmark', function() {
|
||||||
it('should not throw errors', function() {
|
it('should not throw errors', function() {
|
||||||
browser.get(URL);
|
browser.get(URL);
|
||||||
var expectedRowCount = 18;
|
var expectedRowCount = 18;
|
||||||
var expectedCellsPerRow = 28;
|
var expectedCellsPerRow = 27;
|
||||||
var allScrollItems = 'scroll-app #testArea scroll-item';
|
var allScrollItems = 'scroll-app #testArea scroll-item';
|
||||||
var cells = `${ allScrollItems } .row *`;
|
var cells = `${ allScrollItems } .row *`;
|
||||||
var stageButtons = `${ allScrollItems } .row stage-buttons button`;
|
var stageButtons = `${ allScrollItems } .row stage-buttons button`;
|
||||||
|
|
Loading…
Reference in New Issue