web-dev-qa-db-fra.com

Vue me prévient Impossible de définir la propriété réactive sur une valeur non définie, nulle ou primitive: null

Lors de la récupération des données à partir de Firebase j'essaie de définir le properties du object obtenu à l'interface utilisateur, mais lorsque j'essaie de définir des modifications aux données, il me jette cette erreur.
Erreur dans le gestionnaire v-on: "TypeError: Impossible d'utiliser l'opérateur 'in' pour rechercher 'cc' dans null.

J'utilise Vue en mode développement, avec Firebase. Y a-t-il un concept qui me manque?

beforeCreate(){
sref.get().then(sc => {
      if (sc.exists) {
        console.log(sc.data()); //this logs in the correct data
        this.school = sc.data(); //this too
        this.cc = sc.data().cc;  //also this
        this.name = sc.data().name;

Quand je fais

console.log(this.name)

Dans created() il affiche indéfini, toute tentative de modification ou de mise à jour donne également une erreur

Vue warn]: Cannot set reactive property on undefined, null, or primitive value: null
[Vue warn]: Error in v-on handler: "TypeError: Cannot use 'in' operator to search for 'cc' in null"

found in

---> <VSelect>
       <VForm>
         <VCard>

TypeError: Cannot use 'in' operator to search for 'cc' in null
    at Proxy.set 


3
Aditya

Solution simple: ajoutez une vérification v-if pour votre jeu de données, où vous utilisez v-for. Vous aurez peut-être besoin de template pour ce faire.

0