Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 4 additions & 2 deletions src/compiler/compile/render_dom/wrappers/Element/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -985,12 +985,14 @@ function to_html(wrappers: Array<ElementWrapper | TextWrapper | MustacheTagWrapp
state.quasi.value.raw += `"`;
});

state.quasi.value.raw += '>';

if (!wrapper.void) {
state.quasi.value.raw += '>';

to_html(wrapper.fragment.nodes as Array<ElementWrapper | TextWrapper>, block, literal, state);

state.quasi.value.raw += `</${wrapper.node.name}>`;
} else {
state.quasi.value.raw += '/>';
}
}
});
Expand Down
39 changes: 39 additions & 0 deletions test/js/samples/valid-inner-html-for-static-element/expected.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
/* generated by Svelte vX.Y.Z */
import {
SvelteComponent,
detach,
element,
init,
insert,
noop,
safe_not_equal
} from "svelte/internal";

function create_fragment(ctx) {
let div;

return {
c() {
div = element("div");
div.innerHTML = `<img alt="Star" width="100" height="100" src="http://mdn.mozillademos.org/files/12676/star.svg"/>`;
},
m(target, anchor) {
insert(target, div, anchor);
},
p: noop,
i: noop,
o: noop,
d(detaching) {
if (detaching) detach(div);
}
};
}

class Component extends SvelteComponent {
constructor(options) {
super();
init(this, options, null, create_fragment, safe_not_equal, {});
}
}

export default Component;
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
<div>
<img alt="Star" width="100" height="100" src="http://mdn.mozillademos.org/files/12676/star.svg" />
</div>