


Moteur de modèles de fonctions JavaScript : un outil puissant pour générer dynamiquement du HTML
Moteur de modèles de fonctions JavaScript : un outil puissant pour générer dynamiquement du HTML
Dans le développement front-end, la génération dynamique de HTML est une exigence courante, par exemple : afficher les résultats de recherche en fonction des informations saisies par l'utilisateur et rendre dynamiquement les pages basé sur les données provenant de l'arrière-plan, etc. Dans le développement front-end traditionnel, nous utilisons généralement la concaténation de chaînes pour générer du code HTML dynamique. Cependant, cette méthode présente de nombreuses limites, telles qu’une mauvaise lisibilité, une maintenance sujette aux erreurs et une maintenance difficile. Le moteur de modèles de fonctions JavaScript peut très bien résoudre ces problèmes. En même temps, comparé à d'autres moteurs de modèles, le moteur de modèles de fonctions JavaScript est plus léger, flexible et facile à utiliser.
Qu'est-ce que le moteur de modèles de fonctions JavaScript ?
Le moteur de modèles de fonctions JavaScript est un outil courant dans le développement front-end. Il utilise des fragments HTML comme paramètres pour générer dynamiquement des chaînes HTML afin de remplir l'objectif de rendu des données vers l'interface. Il adopte une syntaxe de modèle de chaîne similaire à ES6, c'est-à-dire en utilisant des backticks pour entourer la chaîne et en utilisant ${} pour marquer les variables dans la chaîne, similaire à l'exemple suivant :
<div> <h1 id="title">${title}</h1> <p>${content}</p> </div>
Dans le moteur de modèle, nous pouvons mapper des variables aux fragments HTML en définissant des fonctions pour restituer les données sur la page.
Avantages du moteur de modèle de fonction JavaScript
Le moteur de modèle de fonction JavaScript présente les avantages suivants :
- Bonne lisibilité : l'utilisation du moteur de modèle de fonction pour générer du code HTML est plus cohérente avec une structure de type HTML, facile à lire et pratique. pour les autres développeurs Effectuer une maintenance de suivi.
- Forte flexibilité : grâce à l'utilisation de fonctions JavaScript, les développeurs peuvent définir et écrire des fonctions de manière flexible en fonction des besoins spécifiques de l'entreprise.
- Facile à maintenir : lorsque nous utilisons le moteur de modèles de fonctions pour générer du code HTML, nous pouvons extraire les mêmes fragments HTML et les encapsuler dans des fonctions distinctes pour faciliter la maintenance future.
- Léger : le moteur de modèles de fonctions JavaScript est très léger et, comme il est implémenté dans JavaScript lui-même, il n'est pas nécessaire d'introduire des bibliothèques tierces, il n'exercera donc pas de pression sur la vitesse de chargement des pages.
Implémentation du moteur de modèle de fonction JavaScript
Ce qui suit est l'implémentation de base du moteur de modèle de fonction JavaScript :
function template(tmpl, data) { return tmpl.replace(/${(w+)}/g, function(match, key) { return data[key]; }); } var data = { title: "Hello World", content: "This is a demo of JavaScript function template engine" }; var tmpl = ` <div> <h1 id="title">${title}</h1> <p>${content}</p> </div> `; var html = template(tmpl, data); document.body.innerHTML = html;
Nous définissons l'intégralité du fragment HTML comme une chaîne, utilisons ${} pour remplacer les variables qui doivent être remplies dynamiquement , puis utilisez JavaScript. La méthode replace() de la chaîne remplace les variables de la chaîne et affiche finalement le résultat sur la page.
Il convient de noter que dans les applications réelles, nous pouvons être confrontés à des scénarios plus complexes, tels que la nécessité de boucler les données de rendu, la nécessité d'utiliser des jugements conditionnels, etc. À l'heure actuelle, nous pouvons implémenter des fonctions plus complexes en ajoutant quelques jugements logiques à la fonction.
Ce qui suit est une version étendue de l'exemple de code ci-dessus qui prend en charge le bouclage sur les données de rendu :
function template(tmpl, data) { return tmpl.replace(/<%=(w+)%>/g, function(match, key) { return data[key]; }).replace(/<%for +(w+) +in +(w+)((w+))%>((?! ).| )+<%endfor%>/g, function(match, key, fn, name) { var str = ""; data[name].forEach(function(item) { str += fn(item); }); return str; }); } var data = { title: "Hello World", content: "This is a demo of JavaScript function template engine", list: [{ name: "item1", content: "This is item 1" }, { name: "item2", content: "This is item 2" }, { name: "item3", content: "This is item 3" } ] }; var tmpl = ` <div> <h1><%=title%></h1> <p><%=content%></p> <%for item in list(function(item){%> <div> <h2><%=item.name%></h2> <p><%=item.content%></p> </div> <%})%> </div> `; var html = template(tmpl, data); document.body.innerHTML = html;
Dans cet exemple, nous définissons la syntaxe d'une boucle for, qui génère une fonction appliquée au tableau items pour chaque élément , et renvoie la chaîne résultante.
Le moteur de modèles de fonctions JavaScript étant si flexible, il peut être facilement étendu pour répondre à des besoins spécifiques. Cependant, dans le développement réel, il est recommandé d'utiliser des moteurs de modèles JavaScript open source, tels que guidons.js, Moustache.js, ejs, etc., qui contiennent un grand nombre de fonctions et d'optimisations, sont plus complets et stables, et également prend en charge la pré-compilation pour de meilleures performances.
Résumé
Le moteur de modèles de fonctions JavaScript est un outil très utile qui peut facilement générer du HTML dynamique et le restituer sur la page. Comparé à d’autres moteurs de modèles, il présente les avantages d’une plus grande flexibilité, d’une taille plus légère et d’une mise en œuvre plus simple. Cependant, afin d'améliorer l'efficacité et la stabilité de la production réelle, il est recommandé d'utiliser un moteur de modèles open source mature.
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!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment utiliser WebSocket et JavaScript pour mettre en œuvre un système de reconnaissance vocale en ligne Introduction : Avec le développement continu de la technologie, la technologie de reconnaissance vocale est devenue une partie importante du domaine de l'intelligence artificielle. Le système de reconnaissance vocale en ligne basé sur WebSocket et JavaScript présente les caractéristiques d'une faible latence, d'un temps réel et d'une multiplateforme, et est devenu une solution largement utilisée. Cet article explique comment utiliser WebSocket et JavaScript pour implémenter un système de reconnaissance vocale en ligne.

Xiaohongshu s'efforce d'enrichir ses produits en ajoutant davantage de fonctionnalités d'intelligence artificielle. Selon les médias nationaux, Xiaohongshu teste en interne une application d'IA appelée « Davinci » dans son application principale. Il est rapporté que l'application peut fournir aux utilisateurs des services de chat IA tels que des questions et réponses intelligentes, notamment des guides de voyage, des guides gastronomiques, des connaissances géographiques et culturelles, des compétences de vie, une croissance personnelle et une construction psychologique, etc. Selon les rapports, "Davinci" utilise le modèle LLAMA sous le produit Meta A pour la formation, le produit est testé depuis septembre de cette année. Il y a des rumeurs selon lesquelles Xiaohongshu effectuait également un test interne d'une fonction de conversation de groupe par l'IA. Grâce à cette fonction, les utilisateurs peuvent créer ou introduire des personnages IA dans des discussions de groupe, et avoir des conversations et des interactions avec eux. Source de l'image : T.

WebSocket et JavaScript : technologies clés pour réaliser des systèmes de surveillance en temps réel Introduction : Avec le développement rapide de la technologie Internet, les systèmes de surveillance en temps réel ont été largement utilisés dans divers domaines. L'une des technologies clés pour réaliser une surveillance en temps réel est la combinaison de WebSocket et de JavaScript. Cet article présentera l'application de WebSocket et JavaScript dans les systèmes de surveillance en temps réel, donnera des exemples de code et expliquera leurs principes de mise en œuvre en détail. 1. Technologie WebSocket

Introduction à l'utilisation de JavaScript et de WebSocket pour mettre en œuvre un système de commande en ligne en temps réel : avec la popularité d'Internet et les progrès de la technologie, de plus en plus de restaurants ont commencé à proposer des services de commande en ligne. Afin de mettre en œuvre un système de commande en ligne en temps réel, nous pouvons utiliser les technologies JavaScript et WebSocket. WebSocket est un protocole de communication full-duplex basé sur le protocole TCP, qui peut réaliser une communication bidirectionnelle en temps réel entre le client et le serveur. Dans le système de commande en ligne en temps réel, lorsque l'utilisateur sélectionne des plats et passe une commande

Comment utiliser WebSocket et JavaScript pour mettre en œuvre un système de réservation en ligne. À l'ère numérique d'aujourd'hui, de plus en plus d'entreprises et de services doivent fournir des fonctions de réservation en ligne. Il est crucial de mettre en place un système de réservation en ligne efficace et en temps réel. Cet article explique comment utiliser WebSocket et JavaScript pour implémenter un système de réservation en ligne et fournit des exemples de code spécifiques. 1. Qu'est-ce que WebSocket ? WebSocket est une méthode full-duplex sur une seule connexion TCP.

En essayant de modifier la méthode de connexion réseau, certains utilisateurs ont découvert de manière inattendue que la carte réseau ouverte pendant le processus de commutation était vide, ce qui les empêchait de mener à bien l'opération de commutation. Face à un tel dilemme, comment devons-nous résoudre ce problème ? Que se passe-t-il avec la connexion réseau vide dans Win11 ? 1. Problème de pilote Le pilote de la carte réseau équipé sur l'ordinateur est incompatible avec l'environnement ou la version actuelle ou semble même l'être. trop ancien Solution : Mettez à niveau ou réinstallez le pilote de la carte réseau correspondant. 2. Problème matériel : le matériel de la carte réseau présente des dommages physiques, voire une panne complète. Solution : remplacez le matériel de la carte réseau d'origine. 3. Problème de configuration du système Solution à l’erreur de configuration du système Win11 sur l’ordinateur : nous pouvons.

JavaScript et WebSocket : Construire un système efficace de prévisions météorologiques en temps réel Introduction : Aujourd'hui, la précision des prévisions météorologiques revêt une grande importance pour la vie quotidienne et la prise de décision. À mesure que la technologie évolue, nous pouvons fournir des prévisions météorologiques plus précises et plus fiables en obtenant des données météorologiques en temps réel. Dans cet article, nous apprendrons comment utiliser la technologie JavaScript et WebSocket pour créer un système efficace de prévisions météorologiques en temps réel. Cet article démontrera le processus de mise en œuvre à travers des exemples de code spécifiques. Nous

Utilisation : En JavaScript, la méthode insertBefore() est utilisée pour insérer un nouveau nœud dans l'arborescence DOM. Cette méthode nécessite deux paramètres : le nouveau nœud à insérer et le nœud de référence (c'est-à-dire le nœud où le nouveau nœud sera inséré).
