Skip to content

v-bind's same-name shorthand fails (causes crash) in in-DOM templates #13930

@syimyuzya

Description

@syimyuzya

Vue version

3.5.22

Link to minimal reproduction

https://gist.github.com/syimyuzya/05412cc74587b2b31f935c9db9c0ee8a

Steps to reproduce

Open the reproduction example HTML file in a browser, no build process needed.

What is expected?

A page showing the following text:

Fail #1: param is orz

Pass #1: param is orz

Pass #2: param is orz

What is actually happening?

Got a TypeError: can't access property "type", value is undefined

System Info

System:
    OS: Linux 6.16 Arch Linux
    CPU: (8) x64 11th Gen Intel(R) Core(TM) i7-1165G7 @ 2.80GHz
    Memory: 6.68 GB / 15.35 GB
    Container: Yes
    Shell: 5.9 - /usr/bin/zsh
  Binaries:
    Node: 24.8.0 - /usr/bin/node
    Yarn: 1.22.22 - ~/.local/bin/yarn
    npm: 11.6.0 - /usr/bin/npm
    pnpm: 9.4.0 - ~/.local/bin/pnpm
    bun: 1.2.14 - ~/.bun/bin/bun

Any additional comments?

The problem only occurs in in-DOM templates. SFCs and <script type="text/x-template"> is unaffected and work just fine.

Metadata

Metadata

Assignees

No one assigned

    Labels

    🔨 p3-minor-bugPriority 3: this fixes a bug, but is an edge case that only affects very specific usage.has workaroundA workaround has been found to avoid the problemregression

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions