Maison  >  Article  >  interface Web  >  Qu'est-ce qu'uniapp calculé

Qu'est-ce qu'uniapp calculé

王林
王林original
2023-05-21 19:56:352772parcourir

Ce qui est calculé dans uniapp

Dans uniapp, nous avons souvent besoin de formater, calculer, filtrer et d'autres opérations sur les données dans les données Afin de faciliter l'utilisation et la gestion des développeurs, uniapp fournit la fonctionnalité calculée (attribut calculé). .

computed est une méthode de calcul de nouvelles valeurs d'attribut à partir d'attributs existants dans les données. Il utilise des fonctions pour calculer certains attributs et renvoie dynamiquement les résultats du calcul. calculé peut mettre en cache les résultats des calculs, améliorer les performances et les rendre plus lisibles.

Scénarios d'utilisation de calculé

Nous pouvons généralement utiliser calculé pour formater certaines données qui doivent être calculées ou les filtrer selon certaines règles. Par exemple, nous avons une page de liste de produits et nos données brutes sont obtenues à partir du backend, qui contient le prix et la quantité de chaque produit. Nous devons afficher le volume total des produits actuellement disponibles sur la page, puis nous pouvons le gérer par calcul.

Dans cet exemple, nous devons calculer la nouvelle valeur d'attribut en fonction des données contenues dans data, qui correspond au volume total des produits disponibles à la vente. Nous pouvons définir un attribut calculé :

computed: {
    totalVolume: function() {
        let total = 0;
        for (let i = 0; i < this.products.length; i++) {
            if (this.products[i].isOnSale) {
                total += this.products[i].price * this.products[i].quantity;
            }
        }
        return total;
    }
}

Dans cet attribut calculé, nous utilisons une boucle for pour parcourir tous les produits dans les données. Si le produit est disponible à la vente, alors nous calculons le prix et la quantité du produit. le volume total occupé par le produit, et enfin l'accumulation totale de tous les produits vendables est additionnée pour obtenir le volume total. Ce calcul est complété via une fonction, et le résultat final sera affiché sur la page.

Mécanisme de mise en cache du calcul

Lorsque la valeur de l'attribut calculé dépend des changements, l'attribut calculé sera recalculé. Lorsque la valeur de l'attribut dont dépend le calcul n'a pas changé, le résultat du calcul dans le cache sera renvoyé. Cela peut améliorer l'efficacité des calculs et éviter des calculs répétés.

Remarques sur les propriétés calculées

  1. Les propriétés calculées doivent avoir une valeur de retour, qui changera dynamiquement à mesure que les données dans les données changent.
  2. Les attributs calculés peuvent utiliser les données dans data, mais ils ne peuvent pas modifier directement les données dans data, mais en changeant les valeurs des attributs dont ils dépendent.
  3. Les propriétés calculées peuvent être liées dans le modèle, mais seulement lorsque la valeur de la propriété dépendante change, la mise à jour sera déclenchée et les données de la page seront mises à jour.
  4. Les propriétés calculées sont mises en cache en fonction de leurs dépendances. Il ne sera recalculé que lorsqu'une de ses dépendances changera. Si vous essayez d'accéder à une dépendance sur une propriété calculée et que sa valeur n'a pas changé, la valeur sera renvoyée depuis le cache plutôt que recalculée.

Cet article présente l'attribut informatique calculé dans uniapp, qui peut facilement traiter les données dans les données, améliorer notre efficacité de développement et la maintenabilité du code, et le mécanisme de mise en cache peut également améliorer l'efficacité informatique. Pour les développeurs Uniapp, le calcul est une fonctionnalité très utile qui doit être utilisée à bon escient.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn