# Mise en garde đ±
Notre objectif est de fournir un moyen simple d'utiliser ThreeJS dans VueJS avec la meilleure expĂ©rience de dĂ©veloppement possible. Cependant, vous devez ĂȘtre conscient de certaines mises en garde.
## ~~HMR et ThreeJS~~
:::info
Cela a Ă©tĂ© corrigĂ© dans **TresJS** v1.7.0 đ. Vous pouvez dĂ©sormais utiliser HMR sans avoir Ă recharger la page đ„č.
:::
## Réactivité
Nous aimons tous la rĂ©activitĂ© đ. C'est l'une des fonctionnalitĂ©s les plus puissantes de VueJS. Cependant, il faut ĂȘtre prudent lors de lâutilisation de ThreeJS.
La réactivité de Vue est basée sur [Proxy](https://developer.mozilla.org/es/docs/Web/JavaScript/Reference/Global_Objects/Proxy). Cela permet à Vue 3 de suivre automatiquement les modifications apportées aux objets de données et de mettre à jour les éléments DOM correspondants chaque fois que les données changent.
Puisque nous rendons une scĂšne et la mettons Ă jour Ă chaque image (60 FPS), cela signifie que nous mettons Ă jour la scĂšne 60 fois par seconde. Si l'objet Ă mettre Ă jour est rĂ©actif, Vue tentera de mettre Ă jour cet objet autant de fois. Ce n'est pas une bonne idĂ©e đ
et cela nuira aux performances.
Voici un test de performances de la différence entre l'utilisation d'un objet Proxy et d'un objet plat.
Fig.1 - Exécutions par seconde Objet plat vs proxy.
Source: [Proxy vs Plain Object](https://www.measurethat.net/Benchmarks/Show/12503/0/object-vs-proxy-vs-proxy-setter)
Si vous ĂȘtes obligĂ© d'utiliser la rĂ©activitĂ©, utilisez [shallowRef](https://vuejs.org/api/reactivity-advanced.html#shallowref)
Contrairement à `ref()`, la valeur interne d'une shallowRef est stockée et exposée telle quelle, et aucune réactivité profonde n'est effectuée. Seul l'accÚs à `.value` est réactif.
Source [VueJS Docs](https://vuejs.org/api/reactivity-advanced.html#shallowref)
### Exemple
â Incorrect
```vue
```
â
Correct
```vue
```