什么是 ts-cell?
ts-cell 是一个方便前端开发者快速构建无需后端支持的数据服务的 npm 包。它提供了一套基于 TypeScript 和 express 的数据服务架构,并带有常用的数据处理方法,例如:表格导出、表格导入等等。
利用 ts-cell,您无需关心后端搭建的问题,只需要在前端方便地定义您的数据接口,在后台即可自动生成可用的 JSON API,让您快速构建完整的前端应用。
如何安装 ts-cell?
运行以下代码:
npm install ts-cell --save
ts-cell 的使用方法
定义您的接口
ts-cell 允许您通过定义接口来为您的数据定义 URL 及任意其他信息。
下面是一个简单的例子:
-- -------------------- ---- ------- ------ - --------- ------------ - ---- ---------- ------ - --------------- - ---- ---------- ----- ----------- - ----- -------------------- -- - ----------------------- ----- ----- ---------------- ---- --------- ----- ------------- -- - ----- ---- - ---------------- ----- ------ - ----- ---------------------------------- ---- --- ------ ----------------- --- --
在上面的例子中,我们定义了一个与模式“/board/:name”匹配的URL,形如http://localhost:8080/board/boardname
, 并展示了如何读取请求中的参数。请求的其他方法,如 POST, PATCH, 或 DELETE,可以通过在请求类型上的相应方法上进行定义。
需要注意的是,在请求处理程序内部使用req.cell
属性来获得对数据访问的完整控制权。
定义您的数据库
您可以使用ts-cell来访问各种类型的数据库,包括 MongoDB、Redis和SQLite。定义数据库模型是通过模型定义来完成的。
下面是一个MongoDB模型的例子:
-- -------------------- ---- ------- ------ - --------------- - ---- ---------- ------ - ------- --------------- ------ - ---- ---------- --------- ----- ----- - ----------------- ---- ------- --------- ------- ------- --------- ------------- ------- - ------ ----- ---------- - ----------------- ----- --------- ------- ------ ---- ---------------------------- --------- --------------- ---
在上面的例子中,我们使用typeorm来定义了一个MongoDB模型,名为Board。我们使用createMongoCell
函数,将MongoDB与Board实体关联起来,并在这里定义了数据库名称,以及附加options。
连接您的数据库
随着您的模型的定义,您需要连接到相应的数据库。使用 ts-cell,可以轻松连接到各种类型的数据库。以下是一个MongoDB数据库的例子:
-- -------------------- ---- ------- ------ - ------------ - ---- ---------- ------ - ---------- - ---- --------------- ----- ---- - ----- -- -- - ----- --------------------------- ---------------------- -- ----------- -- -------
在主函数中,我们调用了connectCells
函数连接到我们的MongoDB数据库。在这个例子中,我们连接boardMongo
的模型。(此处仅用了一个模型,connectCells支持一系列模型)
启动服务器
通过以下指令启动 ts-cell 服务器:
-- -------------------- ---- ------- ------ - ----------- - ---- ---------- ------ ------- - ------------------- ----- --- - ---------- ----------------- ---------------- -- -- - ---------------- --------- -- ------------------------ -------------- ---
在上面的例子中,我们使用Express框架启动服务器,然后定义了一个URL路由器,最后启动 ts-cell 服务器。您可以通过将路由器和端口号合并到各种其他服务器框架来使用 ts-cell。只需要确保在启动服务器之前调用startServer
函数。
完整代码实现
-- -------------------- ---- ------- ------ - ------------- ----------- - ---- ---------- ------ ------- - ------------------- ------ - --------------- - ---- ---------- ------ - --------- ------------ - ---- ---------- ------ - --------------- - ---- ---------- ------ - ------- --------------- ------ - ---- ---------- --------- ----- ----- - ----------------- ---- ------- --------- ------- ------- --------- ------------- ------- - ----- ---------- - ----------------- ----- --------- ------- ------ ---- ---------------------------- --------- --------------- --- ----- ----------- - ----- -------------------- -- - ----------------------- ----- ----- ---------------- ---- --------- ----- ------------- -- - ----- ---- - ---------------- ----- ------ - ----- ---------------------------------- ---- --- ------ ----------------- --- -- ----- ---- - ----- -- -- - ----- --------------------------- ---------------------- -- ----------- ----- --- - ---------- --------------------------- ----------------- ---------------- -- -- - ---------------- --------- -- ------------------------ -------------- --- -- -------
这是一个使用 ts-cell 对MongoDB数据进行读取的完整示例代码。使用 ts-cell,您可以在不需要任何后端支持的情况下,快速搭建出丰富的应用程序。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600566c181e8991b448e318f