当前位置:首页 > javascript > nodejs > 正文内容

构建Node.js Web 应用:使用Express、EJS 和 Mongoose

hxing6412年前 (2023-11-07)nodejs4140

在本篇博客文章中,我们将介绍如何使用Node.js的Express框架、EJS模板引擎和Mongoose库来构建一个简单的Web应用实例。

通过代码示例和详细解释,帮助读者了解如何结合这些工具来构建一个完整的Node.js Web 应用。


1. 准备工作

首先,确保你已经安装了Node.js和npm(Node.js 的包管理工具)。

然后创建一个新的文件夹作为我们的项目目录,并在命令行中执行以下命令,初始化一个新的Node.js项目:


npm init -y


2. 安装依赖

接下来,我们需要安装Express、EJS和Mongoose作为我们项目的依赖:


npm install express ejs mongoose


3. 创建Express 应用

在项目目录下创建一个名为app.js的文件,并编写以下代码:


const express = require('express');
const app = express();
const port = 3000;
app.set('view engine', 'ejs');
app.get('/', (req, res) => {
  res.render('index', { title: 'Express + EJS + Mongoose Example' });
});
app.listen(port, () => {
  console.log(`App listening at http://localhost:${port}`);
});


4. 创建EJS视图

在项目目录下创建一个名为views的文件夹,并在其中创建一个名为index.ejs的文件,编写以下代码:


<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title><%= title %></title>
</head>
<body>
  <h1>Welcome to <%= title %></h1>
</body>
</html>


5. 使用Mongoose连接数据库

在app.js中添加Mongoose连接数据库的代码:


const mongoose = require('mongoose');
mongoose.connect('mongodb://localhost:27017/mydb', {useNewUrlParser: true, useUnifiedTopology: true})
  .then(() => {
    console.log('Connected to the database');
  })
  .catch((err) => {
    console.error('Error connecting to the database', err);
  });


代码示例

// 完整的app.js代码
const express = require('express');
const mongoose = require('mongoose');
const app = express();
const port = 3000;
app.set('view engine', 'ejs');
app.get('/', (req, res) => {
  res.render('index', { title: 'Express + EJS + Mongoose Example' });
});
mongoose.connect('mongodb://localhost:27017/mydb', {useNewUrlParser: true, useUnifiedTopology: true})
  .then(() => {
    console.log('Connected to the database');
  })
  .catch((err) => {
    console.error('Error connecting to the database', err);
  });
app.listen(port, () => {
  console.log(`App listening at http://localhost:${port}`);
});


<!-- 完整的index.ejs代码 -->
<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title><%= title %></title>
</head>
<body>
  <h1>Welcome to <%= title %></h1>
</body>
</html>


总结

通过本文的介绍,我们学习了如何使用Node.js的Express框架、EJS模板引擎和Mongoose库来构建一个简单的Web应用实例。

通过这个示例,我们可以了解到如何快速搭建一个Node.js Web 应用的基本流程,以及如何使用EJS进行页面渲染,Mongoose进行数据库连接。


希望读者能够通过本文对Node.js的Web开发有更深入的了解,并能够在实际项目中灵活运用这些技术,构建出更加强大和可维护的Web应用。


扫描二维码推送至手机访问。

版权声明:本文由星星博客发布,如需转载请注明出处。

本文链接:https://www.xingxinghan.cn/?id=453

分享给朋友:

“构建Node.js Web 应用:使用Express、EJS 和 Mongoose” 的相关文章

nodejs保存文件,不存在则自动创建目录

            const absolutePath = path.resolve(outputPath);   &nb...

nodejs 解压文件,当文件名为中文名时会出现乱码

一开始我是使用compressing 去解压的,后面一直出现乱码,于是换了个解压的包 yauzl 具体实现步骤:安装npm install yauzl   2. 封装了个解压文件方法function unzip(zipFileName, output...

Nodejs 定时任务(node-schedule)

安装:npm install node-schedule Cron风格定时器var schedule = require('node-schedule'); function scheduleCronstyl...

Node.js初阶之Express

Node.js是一种基于事件驱动和非阻塞I/O模型的JavaScript运行环境,它非常适合构建高性能的网络应用程序。在Node.js生态系统中,Express是最受欢迎的Web应用程序框架之一。本文将介绍Node.js初阶中的Express框架,并提供一些实例来帮助你入门。什么是ExpressEx...

Node.js中的并发编程:利用事件循环实现高效多任务处理

在Node.js中,利用事件驱动的非阻塞I/O模型,我们可以轻松地实现并发编程,高效地处理多个任务。本文将介绍Node.js中的并发编程概念、常用的实现方式以及相关代码示例,并总结如何通过事件循环来实现高效的多任务处理。 一、并发编程概念...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。