do not collapse whitespace containing nbsp (#3014)

pull/2994/head
Efe Küçük 5 years ago committed by Conduitry
parent ac185052a5
commit be783c5c67

@ -12,7 +12,7 @@ export default class Text extends Node {
super(component, parent, scope, info);
this.data = info.data;
if (!component.component_options.preserveWhitespace && !/\S/.test(info.data)) {
if (!component.component_options.preserveWhitespace && !/[\S\u00A0]/.test(info.data)) {
let node = parent;
while (node) {
if (node.type === 'Element' && node.name === 'pre') {

@ -0,0 +1,19 @@
export default {
html: `<div>&nbsp;hello</div>
<div>&nbsp;hello&nbsp;&nbsp;</div>
<div>&nbsp;hello&nbsp; &nbsp;hello</div>`,
test({ assert, component, target }) {
var divList = target.querySelectorAll('div')
assert.equal( divList[0].textContent.charCodeAt( 0 ), 160 );
assert.equal( divList[1].textContent.charCodeAt( 0 ), 160 );
assert.equal( divList[1].textContent.charCodeAt( 6 ), 160 );
assert.equal( divList[1].textContent.charCodeAt( 7 ), 160 );
assert.equal( divList[2].textContent.charCodeAt( 0 ), 160 );
assert.equal( divList[2].textContent.charCodeAt( 6 ), 160 );
assert.equal( divList[2].textContent.charCodeAt( 7 ), 32 );//normal space
assert.equal( divList[2].textContent.charCodeAt( 8 ), 160 );
}
};

@ -0,0 +1,7 @@
<script>
let name = 'hello';
</script>
<div>&nbsp;{name}</div>
<div>&nbsp;{name}&nbsp;&nbsp;</div>
<div>&nbsp;{name}&nbsp; &nbsp;{name}</div>
Loading…
Cancel
Save