Node.js 如何构建记事应用
在这篇文章中,我们将创建一个记事应用。记事应用基本上用于将信息或笔记存储在数据库中,以防丢失,就像Google Keep一样。
功能: 用户可以使用这个记事应用完成以下操作:
- 显示所有笔记
- 添加新笔记
- 删除笔记
- 更新笔记
方法: 我们将使用Body Parser来从表单中捕获用户输入的值,例如笔记内容和笔记ID,并将它们存储在集合中。然后,我们将使用EJS将笔记发送到网页。EJS是一种中间件,可以轻松地将数据从服务器文件(app.js或server.js)发送到网页。我们还将创建用于删除笔记的删除路由和用于更新笔记的更新路由。
实现: 下面是上述方法的逐步实现。
步骤1:项目设置
初始化NPM: 在终端中创建和定位项目文件夹,然后输入以下命令:
它初始化我们的Node应用程序并生成一个package.json文件。
安装依赖项: 在终端中找到您的根项目目录,并输入以下命令:
要在项目中安装Express,EJS和Body Parser作为依赖项
创建服务器文件: 创建一个’app.js’文件,内部请求Express模块,并创建一个常量’app’用于创建express模块的实例,然后将EJS设置为默认的视图引擎。
重新安排您的目录: 需要使用“.ejs”作为HTML文件的扩展名,以便在其中使用EJS。然后,您必须将视图目录内的每个“.ejs”文件移动到根目录中。EJS默认会在视图文件夹内查找“.ejs”文件。
使用EJS变量: 在更新后的.ejs文件中,您需要使用EJS变量来接收来自服务器文件的值。您可以像这样在EJS中声明变量
向变量发送数据:在您的服务器文件(app.js或index.js)中,您可以使用render方法发送一个EJS文件以及一些数据。
从表单获取数据到app.js: 要接收表单的输入值,我们必须使用一个名为body-parser的node包。
安装body-parser:
需要body-parser模块:
然后:
然后我们可以使用请求对象处理表单数据。
步骤2:获取笔记: 我们有一个包含两个属性content和id的笔记数组。
让我们将数组发送到我们的网页。在之前的步骤中,我们只是把一个值发送到变量,现在我们要发送完整的数组。
由于在我们的数组中有很多元素(注释)是常见的,并且我们必须打印每一个元素,所以我们必须使用ForEach循环来遍历我们集合中的每一个元素,并在更新表单的文本区域字段中显示详细信息。我们将在更新表单的文本区域中显示详细信息,这样我们可以展示注释,同时也可以用它来更新注释。
步骤3:更新笔记: 现在,让我们看看如何在服务器文件(app.js)的更新路由中处理此更新表单。
对于更新笔记,我们必须创建一个更新的路由,我们将在其中获取请求的笔记ID并搜索具有相同笔记ID的元素,并将元素内容属性更改为来自更新表单的“noteContent”。
步骤4:删除笔记: 更新网页提供删除选项:我们必须创建一个表单,将要删除的笔记ID发送到服务器文件“app.js”。
要删除一个注释,我们需要创建一个删除路由,在该路由中我们将获取请求的注释id,并查找具有相同注释id的元素,并删除该元素。
完整代码: 以下是使用Node.js构建笔记应用的完整代码:
app.js
home.ejs
输出: