Adloun

Vue : construire une application web (école d'ingénieur) · Chapitre 3 · Application directe du cours

Le piège de la déstructuration

La réactivité · niveau 2

Énoncé

Que montre le paragraphe avant et après un clic sur « Vendre » ?


<div id="app">
  <p>{{ livre.titre }} : {{ livre.stock }} — {{ titre }} : {{ stock }} — {{ stockRef }}</p>
  <button type="button" @click="vendre">Vendre</button>
</div>

const { createApp, reactive, toRef } = Vue;

createApp({
  setup() {
    const livre = reactive({ titre: "Analyse", stock: 3 });
    const { titre, stock } = livre;
    const stockRef = toRef(livre, "stock");
    function vendre() {
      livre.stock--;
    }
    return { livre, titre, stock, stockRef, vendre };
  },
}).mount("#app");

Corrigé


Analyse : 3 — Analyse : 3 — 3
Analyse : 2 — Analyse : 3 — 2

livre.stock est lu à travers le proxy : il suit. stock, déstructuré, est une copie du nombre 3 faite une fois pour toutes. toRef(livre, "stock") est une ref reliée à la propriété : elle suit. Le titre ne change pas, sa copie reste donc juste, mais par chance.

100 % gratuit

La suite du chapitre est sur Adloun

Exercice suivant et tuteur

Sans compte : le cours et le premier QCM. Exercices et tuteur : inscription gratuite en 30 secondes, sans carte bancaire.

Le cours du chapitre · Tous les exercices du chapitre

Exercice suivant et tuteur →