2.5.21
https://codepen.io/AmrIKhudair/pen/NevxML
1- buat kelas yang memperluas Array dan tambahkan metode khusus
2- buat instance baru dari kelas dan tambahkan ke data
3- coba panggil metode pada instance di template
Metode ini berhasil dijalankan
Kesalahan bukan fungsi
Vue 2 saat ini tidak mendukung subclass Array (cabang pengembangan Vue 3 sudah mendukung). Saya akan mengubah ini menjadi permintaan fitur.
@AmrIKhudair
Saya membutuhkan ini juga dan membuatnya bekerja di user-land. Ketika Vue 3 tiba, Anda dapat menghapusnya.
export function makeReactive (obj) {
// eslint-disable-next-line no-proto
const proto = obj.__proto__
Object.defineProperty(obj, '__proto__', {
get () { return proto },
// eslint-disable-next-line no-proto
set (newValue) { proto.__proto__ = newValue }
})
}
import { makeReactive } from 'util'
export default class UserCollection extends Array {
constructor (...args) {
super(...args)
makeReactive(this)
}
}
@edcoreweb
Terima kasih banyak
Komentar yang paling membantu
@AmrIKhudair
Saya membutuhkan ini juga dan membuatnya bekerja di user-land. Ketika Vue 3 tiba, Anda dapat menghapusnya.