KnockoutJS - Application

KnockoutJS est largement utilisé pour les applications à page unique - Un site Web créé avec la possibilité de récupérer toutes les données nécessaires de manière dynamique avec une charge de page unique réduisant les allers-retours du serveur.

KnockoutJS est un framework côté client. Il s'agit d'une bibliothèque JavaScript qui permet de lier très facilement du HTML aux données de domaine. Il implémente un modèle appelé Model-View-ViewModel (MVVM). Observables est l'ingrédient magique de KnockoutJS. Toutes les données restent synchronisées grâce à l'attribut Observable.

Architecture

Vue

View n'est rien d'autre qu'une interface utilisateur créée à l'aide d'éléments HTML et d'un style CSS.

Vous pouvez lier des éléments HTML DOM au modèle de données à l'aide de KnockoutJS. Il fournit une liaison de données bidirectionnelle entre View et ViewModel à l'aide du concept de `` liaison de données '', ce qui signifie que toutes les mises à jour effectuées dans l'interface utilisateur sont reflétées dans le modèle de données et que toutes les modifications effectuées dans le modèle de données sont reflétées dans l'interface utilisateur. On peut créer une interface utilisateur à mise à jour automatique à l'aide de knockoutJS.

VoirModèle

ViewModel est un objet JavaScript, qui contient les propriétés et les fonctions nécessaires pour représenter les données. View et ViewModel sont connectés ensemble avec le concept de liaison de données déclaratif utilisé en HTML. Cela facilite le changement de HTML sans changer ViewModel. KnockoutJS s'occupe de l'actualisation automatique des données entre eux grâce à l'utilisation d'Observables.

La synchronisation des données est réalisée en liant les éléments DOM à Data Model, en utilisant d'abord la liaison de données, puis en actualisant ces 2 composants via l'utilisation d'Observables. Le suivi des dépendances se fait automatiquement grâce à cette synchronisation des données. Aucun codage supplémentaire n'est nécessaire pour y parvenir. KnockoutJS permet de créer une connexion directe entre l'affichage et les données sous-jacentes.

Vous pouvez créer vos propres liaisons appelées en tant que liaisons personnalisées pour des comportements spécifiques à une application. De cette façon, Knockout donne un contrôle direct sur la façon dont vous souhaitez transformer vos données en HTML.

Modèle

Le modèle correspond aux données de domaine sur le serveur et il est manipulé au fur et à mesure que la demande est envoyée / reçue de ViewModel.

Les données peuvent être stockées dans une base de données, un cookie ou une autre forme de stockage persistant. KnockoutJS ne se soucie pas de la façon dont il est stocké. Il appartient au programmeur de communiquer entre les données stockées et KnockoutJS.

La plupart du temps, les données sont enregistrées et chargées via un appel Ajax.