Συχνά συναντάμε αλλαγές δεδομένων στο Vue, αλλά η προβολή δεν μπορεί να ενημερωθεί, επομένως έχω συνοψίσει μερικές τέτοιες καταστάσεις:
1. Για τον πίνακα που διασχίζεται από το v-for, όταν το περιεχόμενο του πίνακα χρησιμοποιεί arr[0].xx =xx για να αλλάξει τα δεδομένα, το vue δεν μπορεί να το εντοπίσειΑλλαγές δεδομένων πίνακα: Χρησιμοποιούμε ορισμένες μεθόδους για τον χειρισμό πινάκων και κατά την αλλαγή δεδομένων, ορισμένες μέθοδοι δεν μπορούν να παρακολουθούνται από το Vue, ενώ άλλες μπορούν
Το Vue αναδιπλώνει πολλές συναρτήσεις λειτουργίας πίνακα και οι πίνακες που χειρίζονται χρησιμοποιώντας αυτές τις μεθόδους θα παρακολουθούνται από το Vue όταν αλλάζουν τα δεδομένα τους:
push() pop() shift() unshift() συνδέω() sort() reverse() Το vue2.0 προσθέτει επίσης μια μέθοδο για την παρατήρηση του Vue.set(items, indexOfItem, newValue) filter(), concat(), slice() 。 Αυτά δεν αλλάζουν τον αρχικό πίνακα, αλλά επιστρέφουν πάντα έναν νέο πίνακα. Όταν χρησιμοποιείτε μια μέθοδο χωρίς μετάλλαξη, μπορείτε να αντικαταστήσετε τον παλιό πίνακα με έναν νέο
Το Vue δεν μπορεί να εντοπίσει πίνακες που αλλάζουν τα εξής:
(1) Όταν ορίζετε ένα στοιχείο απευθείας με ένα ευρετήριο, vm.items[indexOfItem] = newValue (2) Όταν τροποποιείτε το μήκος του πίνακα, για παράδειγμα: vm.items.length = newLength Χωρίς άλλη καθυστέρηση, ανεβάστε τον κώδικα και επισυνάψτε τις αποδόσεις:
Οι παραπάνω είναι δύο λύσεις για πίνακες που το Vue δεν μπορεί να ανιχνεύσει αλλαγές δεδομένων Αλλάξτε τη μέθοδο add() στον κώδικά σας σε
Σημειώσεις ενημέρωσης λίστας:Η σύνδεση με υπερσύνδεσμο είναι ορατή.Εντοπισμός ενημέρωσης πίνακα Βαθιά κατάδυση στις αρχές απόκρισης:Η σύνδεση με υπερσύνδεσμο είναι ορατή.
|