国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

javascript - La classe dynamique v-bind: qui ajoute des attributs via le contr?le dans la liste de rendu li de vue2.0 ne prend pas effet immédiatement
給我你的懷抱
給我你的懷抱 2017-05-19 10:13:11
0
2
728

Par exemple de code?:
étape 1?: Obtenez un tableau d'objets de données à partir du serveur?: [obj, obj, obj],
étape 2?: Ajoutez un objet navigateur obj à chaque sous-objet?:

    for(let i = 0; i<array.length; i++){
        array[i].myObj = false,
    }
    添加之后的結果是每一個數組子對象obj中的屬性里面就會多了一個自定義的瀏覽器對象屬性:myObj:false

étape 3?: Liez cet attribut à la structure HTML pour contr?ler la classe dynamique

html:
  <ul>
      <li v-for='item in array' @click='changeBg(item)'>
          <span :class='{'change_bg':item.myObj}'>qwer</span>
      </li>
  </ul>
 js:
    methods: {
        changeBg(item){
           item.myObj = true 
        }
    }
css:
.change_bg
  background: red

Le résultat est?: l'attribut myobj a été modifié en true à chaque fois que vous cliquez dessus, mais la classe dynamique ne prendra effet que lorsque ul sera actualisé (une fois actualisée, les données ul ne seront pas réacquises).

給我你的懷抱
給我你的懷抱

répondre à tous(2)
我想大聲告訴你
array[i].myObj = false
改為
this.array.$set(i, {myObj: false})
Ty80

Bonne réponse à l’étage. étant donné que l'attribut est ajouté dynamiquement, vous devez utiliser la méthode set fournie par vue pour faire de l'attribut un attribut accesseur ES5 afin de suivre les modifications.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal