Skip to content

Slots behave differently from Vue 3.5.14, breaks code that worked in 3.5.13 #13468

Closed
@uandco

Description

@uandco

Vue version

3.5.14+

Link to minimal reproduction

https://github.com/uandco/vuejs-314-slots-bug

Steps to reproduce

Run npm install
Run vite

Go to http://localhost:8080

Page displays OK

Change "vue": "3.5.13" to "vue": "3.5.14" or later
Run npm install
Run vite

Go to http://localhost:8080

Page doesn't display, throws:

uuFaq.vue:5 Uncaught TypeError: item is not a function
    at uuFaq.vue:5:36
    at Proxy._sfc_render (uuFaq.vue:1:1)

What is expected?

Iterating slots and extracting props from them should work as it did in Vue 3.5.13 and below

What is actually happening?

It doesn't work when loading the page, getting this:

TypeError: item is not a function
    at uuFaq.vue:5:36
    at renderList (runtime-core.esm-bundler.js:2935:18)
    at Proxy._sfc_render (uuFaq.vue:1:1)

But changing something in the App.vue and letting Vite hot-reload it makes it work.

It never works for built assets though.

System Info

Any additional comments?

It might be related to 5d166f3

Metadata

Metadata

Assignees

No one assigned

    Labels

    ❗ p4-importantPriority 4: this fixes bugs that violate documented behavior, or significantly improves perf.regression

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions