Skip to content

Commit 9cd1062

Browse files
authored
fix: process render function, exported as default (#335)
1 parent 76dfcad commit 9cd1062

File tree

3 files changed

+22
-1
lines changed

3 files changed

+22
-1
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
<script>
2+
import { h } from 'vue'
3+
4+
export default () =>
5+
h(
6+
'div',
7+
{
8+
id: 'functional-render-fn'
9+
},
10+
'Nyan'
11+
)
12+
</script>

e2e/__projects__/basic/test.js

+9
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ import NoScript from './components/NoScript.vue'
2020
import PugRelative from './components/PugRelativeExtends.vue'
2121
import { randomExport } from './components/NamedExport.vue'
2222
import ScriptSetup from './components/ScriptSetup.vue'
23+
import FunctionalRenderFn from './components/FunctionalRenderFn.vue'
2324

2425
// TODO: JSX for Vue 3? TSX?
2526
import Jsx from './components/Jsx.vue'
@@ -179,3 +180,11 @@ xtest('processes .vue file using jsx', () => {
179180
mount(Jsx)
180181
expect(document.querySelector('#jsx')).toBeTruthy()
181182
})
183+
184+
test('processes functional component exported as function', () => {
185+
mount(FunctionalRenderFn)
186+
187+
const elem = document.querySelector('#functional-render-fn')
188+
expect(elem).toBeTruthy()
189+
expect(elem.innerHTML).toBe('Nyan')
190+
})

lib/generate-code.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ module.exports = function generateCode(
4444
if (tempOutput.includes('exports.render = render;')) {
4545
node.add(';exports.default = {...exports.default, render};')
4646
} else {
47-
node.add(';exports.default = {...exports.default};')
47+
// node.add(';exports.default = {...exports.default};')
4848
}
4949

5050
return node.toStringWithSourceMap({ file: filename })

0 commit comments

Comments
 (0)