npm 包 express-tweak 使用教程

阅读时长 11 分钟读完

在前端开发中,我们常常使用 Node.js 的 Express 框架来进行 web 开发,而在快速开发的过程中,我们可能需要加入一些扩展的功能。在这种情况下,我们可以使用已经封装好的 npm 包来加快我们的开发进程。本文将介绍 npm 包 express-tweak 的使用方法,以及如何在你的项目中使用此包。

express-tweak 是什么?

Express-tweak 是个简化 Express 开发的工具包。它提供了一些对原生 Express 的补充,包含了一些常规的功能,如:错误处理、路由中间件、请求数据验证,网页模板渲染等。

express-tweak 的功能

express-tweak 主要提供了以下四种功能:

  1. 错误处理:express-tweak 抛出一些常见错误让你的代码变得更加健壮。同时,它也提供了统一的错误处理方式,便于管理和调试。

  2. 通用路由中间件:express-tweak 提供了许多常用且易于配置的中间件,如:跨域、请求参数解析、访问控制等。

  3. 请求数据验证:为了简化表单提交数据后端验证的麻烦,express-tweak 可以自动进行数据验证,并给出明确的错误信息。

  4. 网页模板渲染:express-tweak 可以自动将数据渲染到前端的 ejs 模板中。这意味着你可以更加专注于数据处理,而不需要关注如何渲染数据。

如何使用 express-tweak?

接下来我们将会介绍如何使用 express-tweak 轻松完成一个示例项目。

在本示例中,我们将会创建一个 todo 应用。它包含了在首页中展示所有的待办事项,以及通过点击跳转到某个待办事项详情页。

1. 安装 express-tweak

在你的项目根目录下,执行以下命令来安装 express-tweak:

npm install express-tweak

2. 准备数据

我们需要先准备好需要展示的数据。在本示例中,我们需要展示的数据是一个 todo 列表,包含了每个事项的 名称、描述 以及状态 三个属性。可以在本地文件中进行存储。

3. 配置 app.js 文件

在开始创建 app.js 文件前,我们需要先安装一下必要的依赖:

npm install ejs express body-parser

接下来,我们创建一个空的 app.js 文件,然后添加以下代码:

-- -------------------- ---- -------
----- ------- - -------------------
----- ---------- - -----------------------
----- --- - ---------------
----- - ---- - - -------------------------
----- --- - ----------

-- -- --- ----
---------------- -----------
------------------ ---------------
------------- -------- -------

-- ------
----------------------------------

-- -----
------------------------------- --------- ---- ----

-- --------
----------------- ---------------------------

---------------- -- -- -
  --------------------------- ------------------------
---

这段代码:

  1. 首先引入了 express、body-parser、ejs 以及存储数据的函数 find
  2. 接下来我们使用了 EJS 来当成模板引擎。我们设置了 EJS视图模板的路径 和 引擎,让 app 在处理视图时自动加载。
  3. 我们使用了 app.use 函数来处理静态文件请求和解析请求体,以及处理 TODOS 路由的请求。

4. 添加路由

接下来我们来实现 todo 的路由,我们需要创建文件夹:routes,然后创建一个 todos.js 文件,然后在 todos.js 中加入以下代码:

-- -------------------- ---- -------
----- - ----------- ----------- ----------- ------------ - - --------------------------

----- ------ - ----------------------------

--------------- ----- ----- ---- -- -
  ----- ----- - ----- -------
  ----------------
---

---------------- ----- ----- ---- -- -
  ----- -
    -----
    ------------
    ------
  - - ---------

  ----- ---- - ----- ------------
    -----
    ------------
    ------
  ---

  ---------------
---

------------------ ----- ----- ---- -- -
  ----- -
    --
  - - -----------
  ----- -
    -----
    ------------
    ------
  - - ---------

  ----- ---- - ----- -------------- -
    -----
    ------------
    ------
  ---

  ---------------
---

--------------------- ----- ----- ---- -- -
  ----- -
    --
  - - -----------

  ----- ---------------
  --------------------
---

------------------ ----- ----- ---- -- -
  ----- -
    --
  - - -----------
  ----- ---- - ----- -----------------
  ---------------
---

-------------- - -------

我们在这个文件中定义了这个应用程序的各种路由,包括了:

  • 获取所有的 todo 列表
  • 向 todolist 中添加一个新的 todo
  • 更新 todo 列表中某个 todo 的状态
  • 删除 todo 列表中某个 todo
  • 根据 todo 的编号获取 todo 详情

5. 渲染模板

最后,我们需要单独还需要创建需要用到的模板。我们需要在 views 文件夹下创建另一个文件夹,然后在文件夹中创建用于渲染指定 HTML 和 EJS 数据的模板。

在我们的在 app.js 中使用 app.set(‘view engine’,’ejs’) 函数时,Express 将默认在 views 文件夹下查找 view。因此,我们在创建 app.js 文件时,将 views 设置为 ./views。我们需要在 views 文件夹下创建一个 todos 文件夹,然后在其中创建以下两个文件:

./views/todos/show.ejs

-- -------------------- ---- -------
--------- -----
------
------
  -------------- ---- ----------
-------
------
  ---- --- --------- -- -----
  --- --- ---------------- -- ----
  --- --- ----------- -- ----
-------
-------

./views/todos/index.ejs

-- -------------------- ---- -------
--------- -----
------
------
  -------------- ---- ----------
-------
------
  ---------------
  -------
    -------
      ----
        -----------
        -----------
        -----------
      -----
    --------
    -------
      -- ------- ---- --------------- ---- - --
        ----
          ----
            -- ---------------- ------------ ----
              ---------------- --
            ----
          -----
          ---- --- -------------------- -- -----
          ---- --- --------------- -- -----
        -----
      -- - --
    --------
  --------
-------
-------

使用示例

使用 express-tweak 需要执行以下几个步骤:

  1. $ npm install express-tweak
  2. require() express-tweak 并调用 init() 函数。
  3. 使用 express-tweak 提供的方法来简化你的代码。

接下来我们使用上面构建的示例程序,完成一个完整的网站。

比如,我们可以创建一个 app.js 文件,并在其中引入 express-tweak

-- -------------------- ---- -------
----- ------- - -------------------
----- - ---- - - -------------------------
----- --- - ----------

-- --- -------------
----------
    ---------- -
        ------ ---
        --------- ---
    --
    ------ -
        --------- -- --- -- -- -
            -------------- --- --------
        --
        ------------ -- --- -- -- -
            ------------------ ------ --------
        -
    -
---

------------ ---------------------

---------------- -- -- -
    -------------------- ------ --- ----------------
--

然后,我们在项目 routes 目录下创建一个 index.js 文件,其中包含了我们 baseRoute 和 router,代码如下:

-- -------------------- ---- -------
----- ------- - -------------------
----- - ------ ------------ --------- - - -------------------------

----- ------ - -----------------
----- --------- - --------

-- -------- ----------
------------------------
------------------------------- --------- ----- ----
----------------------

-- -------- ------
--------------------------- ----- ----- ---- -- -
  ----- ----- - ----- ---------------------
  ------------------------- ---------
---

------------------------------ ----- ---- -- -
  ------------------------
---

--------------------------------- ----- ----- ---- -- -
  ----- - ----- ----------- - - ---------
  ----- -------------------- ----- ----------- ---
  ------------------------
---

----------------------------------- ----- ----- ---- -- -
  ----- - -- - - -----------
  ----- ---- - ----- ------------------------
  ------------------------ - ---- ---
---

-------------------------------------- ----- ----- ---- -- -
  ----- - -- - - -----------
  ----- - ----- ------------ - - ---------
  ----- ------------------------- - ----- ------------ ---
  ------------------------
---

------------------------------------- ----- ----- ---- -- -
  ----- - -- - - -----------
  ----- --------------------------
  ------------------------
---

-------------- - -------

函数 store 来自 express-tweak 包。它可以让你快速地读取你在 config 中预配置的数据库、服务等。

最后,在项目的 views/todos 文件夹下,你就可以放置所有模板文件(比如: 'index.ejs', 'add.ejs', 'edit.ejs')以及 CSS 文件等。

这样就完成了我们的 todo 应用程序。使用 express-tweak,我们可以快速地搭建出我们需要的应用程序,省去了一些麻烦而不必要的代码。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60067368890c4f7277584044

纠错
反馈