Skip to content

Commit f061d80

Browse files
committed
fix v-if false rendering
1 parent 55d8bfd commit f061d80

File tree

2 files changed

+29
-1
lines changed

2 files changed

+29
-1
lines changed

Diff for: src/server/optimizing-compiler/codegen.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ function elementToSegments (el, state): Array<StringSegment> {
135135
el.ifProcessed = true
136136
return [{
137137
type: EXPRESSION,
138-
value: genIf(el, state, elementToString, '""')
138+
value: genIf(el, state, elementToString, '"<!---->"')
139139
}]
140140
} else if (el.tag === 'template') {
141141
return childrenToSegments(el, state)

Diff for: test/ssr/ssr-string.spec.js

+28
Original file line numberDiff line numberDiff line change
@@ -818,6 +818,34 @@ describe('SSR: renderToString', () => {
818818
})
819819
})
820820

821+
it('v-if', done => {
822+
renderVmWithOptions({
823+
template: `
824+
<div>
825+
<span v-if="true">foo</span>
826+
<span v-if="false">bar</span>
827+
</div>
828+
`
829+
}, res => {
830+
expect(res).toContain(`<div data-server-rendered="true"><span>foo</span> <!----></div>`)
831+
done()
832+
})
833+
})
834+
835+
it('v-for', done => {
836+
renderVmWithOptions({
837+
template: `
838+
<div>
839+
<span>foo</span>
840+
<span v-for="i in 2">{{ i }}</span>
841+
</div>
842+
`
843+
}, res => {
844+
expect(res).toContain(`<div data-server-rendered="true"><span>foo</span> <span>1</span><span>2</span></div>`)
845+
done()
846+
})
847+
})
848+
821849
it('template v-if', done => {
822850
renderVmWithOptions({
823851
template: `

0 commit comments

Comments
 (0)