简介
Express.js 是一个流行的 Node.js 框架,它可以帮助我们构建 Web 应用程序。在本篇文章中,我们将使用 Express.js 构建一个完整的电子商务 Web 应用程序。我们将使用 MongoDB 作为我们的数据库,并使用 Mongoose 进行数据建模和查询。
准备工作
在开始之前,我们需要确保已经安装了 Node.js 和 MongoDB。如果您还没有安装,请先安装它们。
接下来,我们需要创建一个新的项目文件夹,并在其中创建以下文件:
- ------ - ------------ - ------- - ---------- - ------- - ----------- - ------ - --------- - ------- - ----------
安装依赖项
在我们开始编写代码之前,我们需要安装一些必要的依赖项。打开终端并导航到项目文件夹,然后运行以下命令:
--- ---- -- --- ------- ------- -------- --- ----------- ------
这将安装 Express.js,Mongoose,EJS 模板引擎和 Body-parser 中间件。
编写代码
app.js
我们将从编写主要的应用程序文件 app.js 开始。在此文件中,我们将设置应用程序并定义中间件和路由。
-- ----- ----- ------- - ------------------- ----- -------- - -------------------- ----- ---------- - ----------------------- -- ---- ----- ------------- - ----------------------------- -- -- ------- ---- ----- --- - ---------- -- -- ------- --- ----------------------------------------------------- -- --- ------------------------------- --------- ----- ---- ---------------------------------- -- -- -------------------- --------------- -- ----- ---------------- -- -- - ------------------- ------- -- ---- ------- ---
在这个文件中,我们首先引入了必要的依赖项,然后创建了一个 Express 应用程序。我们还使用 Mongoose 连接到 MongoDB 数据库,并设置了一些中间件和路由。
models/product.js
接下来,我们将定义 Product 模型。在 models/product.js 文件中,我们将使用 Mongoose 定义一个简单的模型。
----- -------- - -------------------- ----- ------------- - --- ----------------- ----- - ----- ------- --------- ---- -- ------ - ----- ------- --------- ---- -- ------------ - ----- ------- --------- ---- -- --- -------------- - ------------------------- ---------------
在这个文件中,我们定义了一个包含名称,价格和描述属性的 Product 模型。我们还将这个模型导出,以便在其他文件中使用。
routes/products.js
现在,我们将编写产品路由。在 routes/products.js 文件中,我们将定义处理产品路由的函数。
----- ------- - ------------------- ----- ------ - ----------------- ----- ------- - ----------------------------- --------------- ----- ---- -- - ------------------ --------- -- - -- ----- - ----------------- - ---- - ------------------- - -------- --- - --- --- ------------------ ----- ---- -- - ------------------ --- ------------------- ----- ---- -- - ----- ------- - --- --------- ----- -------------- ------ --------------- ------------ --------------------- --- ---------------- -- - -- ----- - ----------------- - ---- - -------------------------- - --- --- -------------- - -------
在这个文件中,我们首先引入 Express 和产品模型。然后,我们定义了三个路由:一个用于显示所有产品,一个用于显示添加产品表单,另一个用于处理添加产品表单提交。在显示所有产品的路由中,我们使用 Product.find() 方法从数据库中获取所有产品,并将它们传递给 index.ejs 视图。
views/index.ejs
接下来,我们将编写 index.ejs 视图,用于显示所有产品。
--------- ----- ------ ------ ----- ---------------- --------- ---------- ------------- ------- ------ ----------------- ---- -- ------------------------ -- - -- ---- ------- ------------ ------- ------ ------------------- ------ ------ ------------- ------ ----- -- --- -- ----- -- ------------------------ ----------- ------- -------
在这个文件中,我们使用 EJS 模板引擎来渲染产品列表。我们使用一个循环来遍历所有产品,并将它们显示在一个无序列表中。我们还添加了一个链接,用于添加新产品。
views/add.ejs
最后,我们将编写 add.ejs 视图,用于显示添加产品表单。
--------- ----- ------ ------ ----- ---------------- ---------- --------------- ------- ------ ------- ------------ ----- ---------------------- -------------- ----- ------ ------------------------ ------ ----------- ----------- ---------- ------ ----- ------ -------------------------- ------ ------------- ------------ ----------- ------ ----- ------ -------------------------------------- --------- ------------------ ---------------------------- ------ ----- ------- ----------------- ---------------- ------ ------- ------- -------
在这个文件中,我们使用 HTML 表单来创建一个添加产品表单。该表单将使用 POST 方法提交到 /products/add 路由。我们使用标签和输入元素来收集产品名称,价格和描述。
运行应用程序
现在,我们已经编写了所有必要的代码。我们可以在终端中运行以下命令来启动应用程序:
---- ------
然后,我们可以在浏览器中访问 http://localhost:3000/products 来查看所有产品。我们还可以访问 http://localhost:3000/products/add 来添加新产品。
总结
在本文中,我们使用 Express.js 和 Mongoose 构建了一个完整的电子商务 Web 应用程序。我们学习了如何使用 Express.js 设置应用程序,如何使用 Mongoose 连接到 MongoDB,如何定义模型和路由,以及如何使用 EJS 模板引擎渲染视图。我们还编写了一个简单的产品列表和添加产品表单。这是一个简单的示例,但它可以帮助您了解如何使用 Express.js 构建 Web 应用程序。
来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/65fa943cd10417a22266e739