依據(jù) swagger(openapi) 文檔一鍵生成 typescript 或 javascript 代碼
平時在和后端對接時,總是要把后端swagger聲明好的類型在ts中再實現(xiàn)一遍,寫一堆interface;今天推薦一個庫,可以根據(jù)swagger文檔,直接生成ts 或 js代碼,并且有良好的代碼提示
注意:swagger文檔版本需要3.0及以上
先上效果圖
1.安裝腳手架
npm i -g @zeronejs/cli
2.打開你的項目
我這里快速創(chuàng)建下
npm ini -y
然后創(chuàng)建一個swagger.config.json
文件
配置示例:
{
"docsUrl": "http://www.example.com/v3/api-docs",
"axiosInstanceUrl": "axios"
}
其中docsUrl指的是swagger頁面上json鏈接地址
當(dāng)然你也可以指定本地json文件
3.運行命令
3.1 ts代碼
zerone api
3.2 js代碼
生成js依賴于axios,請先安裝axios
npm install axios
zerone api -js
代碼已生成!執(zhí)行成功??!
4. 實戰(zhàn)操作
通常我們的項目并不在根目錄,稍微修改下…
我們把swagger.config.json
和 docs.json
放在 /src/api 下,如果需要創(chuàng)建axios實例的話,axiosInstanceUrl
換成實例的地址
4.1運行命令
ts代碼
zerone api -p ./src/api
js代碼
zerone api -js -p ./src/api
生成成功!
由于也自動生成了相應(yīng)的declare文件,所以就算是js也會有很好的代碼提示
完整demo代碼:https://gitee.com/zzh948498/swagger-to-ts
官方文檔地址:zeronejs (ps: 文檔目前掛載在github上)文章來源:http://www.zghlxwxcb.cn/news/detail-635967.html
源碼地址:https://github.com/zeronejs/zerone文章來源地址http://www.zghlxwxcb.cn/news/detail-635967.html
到了這里,關(guān)于讀取swagger接口文檔、自動生成前端ts或js代碼的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!