成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

商業前端TS開發自動化工具

開發 前端
在開發協作上,前后端的API溝通,大都通過配置swagger api來進行,要不就是口口相傳或者通過寫info文檔來定義結構、入參及出參,這種協作方式不僅溝通成本高,且前端缺少能主動感知后端API變更的手段。

一、背景

商業側的業務比較復雜,B端項目中含有大量常量類的類型判斷,且因歷史原因,很多常量值前端無法直接知其含義,這既不利于新人的上手,也不利于項目的維護。

在開發協作上,前后端的API溝通,大都通過配置swagger api來進行,要不就是口口相傳或者通過寫info文檔來定義結構、入參及出參,這種協作方式不僅溝通成本高,且前端缺少能主動感知后端API變更的手段。

同時,為了提高項目的可維護性,組內推動前端項目TS工程化,在改造過程中,也會因為業務迭代,需要創建新的項目,而新項目TS工程化的過程,不僅需要自定義大量的類型,也需要定義后端API類型參數,如果全部通過手動敲,代價太大,不僅很容易出錯,也會影響業務的開發效率。

因此,為了提升開發協作效率,增加前端主動感知API的能力,提升項目的可維護性和開發效率,開發實現了TS自動化生成工具。

二、核心功能

  1. 自動生成api函數體結構
  2. 自動化生成api interface
  3. 自動生成本地mock file
  4. 支持自定義模版輸出改造
  5. 支持駝峰與下劃線轉換輸出
  6. 支持自定義header改造
  7. 同時支持swagger api v2和v3版本

三、轉換原理

swagger api doc的文檔結構

圖片圖片

關鍵屬性拆分:

圖片圖片

注:Template Function可根據實際情況進行覆蓋,默認是商業側的模版輸出格式。

四、項目接入

工具地址:(Package - @bilibili-business/ad-swagger-fe)

接入步驟:

1.安裝

npm install @bilibili-business/ad-swagger-fe --registry=http://registry.npm.bilibili.co

2.配置模版文件,在項目根目錄下新建swagger.config.js文件(目錄按需)

3.可將示例代碼(下方文檔中)可以直接copy到swagger.config.js文件中

4.替換修改代碼中的source地址,將其替換成目標swagger doc地址

5.命令行中執行:node ./swagger.config.js

6.項目中的src目錄下,會多出一個swagger文件夾,即為生成的目標文件

7.可以根據生成的內容,調整工具參數,包括header

模版示例代碼

圖片圖片

五、項目實踐

目前該工具已在商業前端項目中推廣并廣泛使用,商業側整體接入率85%, 帶貨項目接入率100%。

生成的API函數和TS interface 可直接使用,無需手動編碼,業務開發效率提升1pd。

舉例:后端API接口數1556個

圖片圖片

通過工具生成的代碼

  • 生成的API實例

圖片圖片

  • 生成的Interface

圖片圖片

  • 在項目中直接使用

圖片 圖片

本期作者

楊雨浩嗶哩嗶哩資深開發工程師楊雨浩嗶哩嗶哩資深開發工程師

責任編輯:武曉燕 來源: 嗶哩嗶哩技術
相關推薦

2017-01-16 13:38:05

前端開發自動化

2010-12-06 09:54:09

網絡自動化

2022-07-20 12:18:36

Python自動化工具tox

2009-10-09 17:50:59

VB Script開發

2023-10-25 08:00:00

人工智能游戲開發

2010-05-26 16:21:25

2020-03-31 10:58:35

網絡自動化SD-WAN軟件定義網絡

2010-12-06 09:56:52

數據中心網絡

2021-05-19 17:04:29

Python阿里自動化工具

2016-09-08 15:20:04

JavascriptNodeGulp

2025-06-09 18:50:40

2009-07-27 12:54:10

ASP.NET+Ora

2013-12-19 09:56:12

云計算自動化工具云計算管理

2021-05-08 09:00:53

AI 工具人工智能

2012-04-16 10:12:55

云計算自動化

2020-04-26 15:31:58

DevOps自動化工具

2019-09-18 20:39:07

數據科學自動化工具機器學習

2021-02-22 18:50:03

Ansible系統運維

2021-04-30 13:40:55

Linux自動化工具開源

2019-12-11 11:54:37

IT工具云計算
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美在线成人影院 | 亚洲一区三区在线观看 | 午夜精品一区 | 精品一区二区av | 国产精品日韩在线观看一区二区 | 丝袜久久 | 亚洲久久在线 | 成人永久免费视频 | 成人网在线 | 在线黄色网 | 欧美日韩国产一区二区三区 | 国产在线播 | 色播久久久 | 中文字幕精品一区二区三区精品 | 亚洲人在线播放 | 亚洲一区二区三区在线观看免费 | 精品视频一区二区三区 | 精品久久国产老人久久综合 | 国产在线1 | 91偷拍精品一区二区三区 | 午夜精品视频在线观看 | wwwsihu| 亚洲免费精品 | 国产精品美女久久久久久免费 | 久久久综合精品 | 国产精品视频久久久 | 一区二区三区小视频 | 精品国产乱码久久久久久图片 | 久久亚洲一区二区 | 激情网站在线观看 | 九九热精品在线 | 日本在线小视频 | 国产福利在线 | 日韩精品一区二区三区在线观看 | 你懂的在线视频播放 | 最新国产精品 | 欧美一级视频 | 九九热在线免费视频 | 成人免费在线观看 | 日韩一区中文字幕 | av在线免费观看网址 |