Skip to content

Is Vue performing unnecessary re-render when using $listeners? #7257

@sqal

Description

@sqal

Version

2.5.11 (and earlier versions)

Reproduction link

https://jsfiddle.net/xb4172g8/

Steps to reproduce

  1. Open console and observe while typing something into input fields
  2. Enter some text into name field -> Vue re-renders all three Textfield components
  3. In line 21 replace { ...this.$listeners } with an empty object
  4. Once again enter some text into any field -> Vue re-renders only updated Textfield

What is expected?

Vue should re-render only the component whose props has changed.

What is actually happening?

Using $listeners in component's render function causes the component to be rendered whenever its parent is updated even though his props hasn't changed.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions