Skip to content

Computed values from extended array methods do not re-evaluate #11628

@scottbedard

Description

@scottbedard

Vue version

3.5.0-beta.2

Link to minimal reproduction

https://play.vuejs.org/#eNp9Uk1v2zAM/SucLnEWT2na7RLYwbqih+2wDdtu0zA4NpM6kSVBH2kLw/99lDW3ORQFDAsi3yMfn9iza2P4KSBbs8LVtjUeHPpgNkK1ndHWQw+17kzw2ORgcQcD7KzuYEakmVBC1bJyDm60lFj7VivAB4+qcXBtbfUIvVAAu1Y12REf5+kKVMgHq8AFg5aPWb09QLkBOjgBoSxLiIQIH4Sijzpp5Tz4u1btHZRRTKbw/qx1FtF95K1hlYOiPwy5UHMqM9EbHbYSG+JPY2XZPHYelUWMlsil3mezCfBmNsr4rzn156dKBkzSV3Ou4C1ckkwCFsvkIzlIF4+dkZVHugEUxuKm70liKpI/qRlgGIplTEcWIbfBe/LyYy3b+lgKlgi/L/5wtVgItlmsimXCEKNYnrVhOfOO5ti1e35wWtHLjqMJFudpJdpvJprlBFtPzyFYJaW+/zLGvA1IpqV4fYf18YX4wT3EmGDfLTq0JxTsKecru0ef0rc/v9I+nCU73QRJ6FeSP5DeIESNCfYpqIZkn+FGtZ/H/SRbfrnbuHJuGioKHfdmxAtGm3rzyujPcq/4+2nfyMW/J7SxJhl4xT/wi3db9BW/ZMM/xOERfQ==

Last working: 3.4.38

Steps to reproduce

  1. Create a class that extends Array
  2. Add a method to that class that calls it's super method
  3. Create a computed value that relies on that method

What is expected?

The computed property should re-evaluate when it's value in the collection changes

What is actually happening?

The computed value does not re-evaluate

System Info

System:
    OS: macOS 14.4.1
    CPU: (10) arm64 Apple M1 Pro
    Memory: 215.31 MB / 32.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 20.14.0 - ~/.nvm/versions/node/v20.14.0/bin/node
    npm: 10.7.0 - ~/.nvm/versions/node/v20.14.0/bin/npm
    pnpm: 9.7.0 - ~/Library/pnpm/pnpm
  Browsers:
    Chrome: 127.0.6533.101
    Firefox Nightly: 129.0a1
    Safari: 17.4.1
  npmPackages:
    vue: 3.5.0-beta.2 => 3.5.0-beta.2

Any additional comments?

Relates to #11570 and #11573

Metadata

Metadata

Assignees

No one assigned

    Labels

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

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions