Maison interface Web Questions et réponses frontales Parlons de la façon dont nodejs ajoute du HTML à la page de requête

Parlons de la façon dont nodejs ajoute du HTML à la page de requête

Apr 07, 2023 am 09:30 AM

Node.js est un runtime JavaScript basé sur le moteur Chrome V8 qui facilite la création d'applications Web hautes performances et évolutives. Dans Node.js, nous pouvons utiliser divers modules et packages pour étendre nos applications afin d'obtenir des fonctionnalités plus puissantes. Dans cet article, nous expliquerons comment ajouter du HTML à la page de requête.

  1. Utiliser un moteur de modèles

Un moteur de modèles est un outil qui combine des données et des modèles pour générer du HTML. Il existe de nombreux moteurs de modèles parmi lesquels choisir dans Node.js, tels que EJS, Guidon et Pug. Utilisez-les pour restituer facilement les données de manière dynamique dans des pages HTML.

Voici un exemple d'utilisation du moteur de template EJS :

Tout d'abord, installez le module EJS :

npm install ejs
Copier après la connexion

Ensuite, ajoutez EJS à votre application en utilisant le code suivant :

const express = require('express');
const app = express();
const ejs = require('ejs');
app.set('view engine', 'ejs');
Copier après la connexion

Dans le code, nous utilisons app .set pour définir EJS comme moteur d'affichage afin que les modèles EJS puissent être utilisés dans l'application. app.set方法来定义EJS作为我们的视图引擎,这样就可以在应用程序中使用EJS模板了。

接下来,我们可以创建一个简单的EJS模板来渲染数据到HTML中:

<!DOCTYPE html>
<html>
<head>
    <title><%= title %></title>
</head>
<body>
    <h1><%= message %></h1>
</body>
</html>
Copier après la connexion

在EJS模板中,我们可以通过“<%= %>”来访问JavaScript变量和逻辑。在这个例子中,“title”和“message”是从服务器传递到模板中的数据。

最后,我们可以使用以下代码将数据渲染到视图中:

app.get('/', (req, res) => {
    res.render('index', { title: 'Node.js', message: 'Hello World!' });
});
Copier après la connexion
  1. 使用流

在Node.js中,我们可以使用流来将数据动态添加到HTML文档中。其中,Readable流用来从源头读取数据,然后Writable流用来写入数据到目标。通过这种方式我们可以很容易地将HTML文档转化为可读取流,并且将需要插入的HTML数据到可写入流中。

以下是一个简单的示例:

const http = require('http');
const fs = require('fs');

http.createServer(function (req, res) {
  res.writeHead(200, { 'Content-Type': 'text/html' });
  const readable = fs.createReadStream(__dirname + '/index.html');
  readable.pipe(res);
}).listen(3000);
Copier après la connexion

在上述示例中,我们首先使用createReadStream方法创建一个可读取流,然后将HTML文档传递到流中。然后我们使用pipe

Ensuite, nous pouvons créer un modèle EJS simple pour restituer les données en HTML :

rrreee

Dans le modèle EJS, nous pouvons accéder aux variables et à la logique JavaScript via "<%= %>". Dans cet exemple, « titre » et « message » sont les données transmises au modèle depuis le serveur.

Enfin, nous pouvons restituer les données dans la vue en utilisant le code suivant : 🎜rrreee
    🎜Utilisation de flux🎜🎜🎜Dans Node.js, nous pouvons utiliser des flux pour ajouter dynamiquement des données à un document HTML milieu. Parmi eux, le flux Readable est utilisé pour lire les données de la source, puis le flux Writable est utilisé pour écrire des données sur la cible. De cette façon, nous pouvons facilement convertir le document HTML en un flux lisible et insérer les données HTML qui doivent être insérées dans le flux inscriptible. 🎜🎜Voici un exemple simple : 🎜rrreee🎜Dans l'exemple ci-dessus, nous créons d'abord un flux lisible à l'aide de la méthode createReadStream, puis transmettons le document HTML dans le flux. Nous utilisons ensuite la méthode pipe pour écrire le flux dans la réponse, ajoutant ainsi dynamiquement le contenu du fichier HTML à la page demandée. 🎜🎜Résumé : 🎜🎜Node.js permet d'ajouter très facilement du HTML à la page demandée. La méthode du moteur de modèle peut être utilisée pour restituer dynamiquement des données dans une page HTML, tandis que le flux peut être utilisé pour ajouter dynamiquement des fichiers HTML à la page demandée. Vous pouvez choisir une méthode appropriée pour accomplir la tâche en fonction de vos besoins. 🎜

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 de ce site Web
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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

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

Qu'est-ce que l'utilisation Effecte? Comment l'utilisez-vous pour effectuer des effets secondaires? Qu'est-ce que l'utilisation Effecte? Comment l'utilisez-vous pour effectuer des effets secondaires? Mar 19, 2025 pm 03:58 PM

L'article traite de l'utilisation Effecte dans React, un crochet pour gérer les effets secondaires comme la récupération des données et la manipulation DOM dans les composants fonctionnels. Il explique l'utilisation, les effets secondaires courants et le nettoyage pour éviter des problèmes comme les fuites de mémoire.

Qu'est-ce que UseContext? Comment l'utilisez-vous pour partager l'état entre les composants? Qu'est-ce que UseContext? Comment l'utilisez-vous pour partager l'état entre les composants? Mar 19, 2025 pm 03:59 PM

L'article explique UseContext dans React, qui simplifie la gestion de l'État en évitant le forage des accessoires. Il traite des avantages tels que les améliorations centralisées de l'État et des performances grâce à des redevances réduites.

Comment connectez-vous les composants React au magasin Redux à l'aide de Connect ()? Comment connectez-vous les composants React au magasin Redux à l'aide de Connect ()? Mar 21, 2025 pm 06:23 PM

L'article discute de la connexion des composants React à Redux Store à l'aide de Connect (), expliquant MapStateToproprop, MapDispatchToprops et des impacts de performances.

Comment empêchez-vous le comportement par défaut dans les gestionnaires d'événements? Comment empêchez-vous le comportement par défaut dans les gestionnaires d'événements? Mar 19, 2025 pm 04:10 PM

L'article discute de la prévention des comportements par défaut dans les gestionnaires d'événements à l'aide de la méthode empêchée dedEfault (), de ses avantages tels que une expérience utilisateur améliorée et des problèmes potentiels tels que les problèmes d'accessibilité.

Quels sont les avantages et les inconvénients des composants contrôlés et incontrôlés? Quels sont les avantages et les inconvénients des composants contrôlés et incontrôlés? Mar 19, 2025 pm 04:16 PM

L'article traite des avantages et des inconvénients des composants contrôlés et incontrôlés dans la réaction, en se concentrant sur des aspects tels que la prévisibilité, la performance et les cas d'utilisation. Il conseille les facteurs à considérer lors du choix entre eux.

Comment définissez-vous les itinéraires en utilisant le & lt; Route & gt; composant? Comment définissez-vous les itinéraires en utilisant le & lt; Route & gt; composant? Mar 21, 2025 am 11:47 AM

L'article traite de la définition des itinéraires dans le routeur React à l'aide de la & lt; Route & gt; Composant, couvrant des accessoires comme le chemin, le composant, le rendu, les enfants, le routage exact et imbriqué.

Le rôle de React dans HTML: Amélioration de l'expérience utilisateur Le rôle de React dans HTML: Amélioration de l'expérience utilisateur Apr 09, 2025 am 12:11 AM

React combine JSX et HTML pour améliorer l'expérience utilisateur. 1) JSX incorpore du HTML pour rendre le développement plus intuitif. 2) Le mécanisme DOM virtuel optimise les performances et réduit les opérations DOM. 3) Interface utilisateur de gestion basée sur les composants pour améliorer la maintenabilité. 4) La gestion des états et le traitement des événements améliorent l'interactivité.

Quelles sont les limites du système de réactivité de Vue 2 en ce qui concerne les changements de tableau et d'objets? Quelles sont les limites du système de réactivité de Vue 2 en ce qui concerne les changements de tableau et d'objets? Mar 25, 2025 pm 02:07 PM

Le système de réactivité de Vue 2 lutte avec le réglage de l'index de tableau direct, la modification de la longueur et l'ajout / suppression de la propriété de l'objet. Les développeurs peuvent utiliser les méthodes de mutation de Vue et Vue.set () pour assurer la réactivité.

See all articles