typeof-jsonc 將 JSONC/JSON 轉換為 TypeScript 宣告

藍鋒發表於2019-05-11

1、TypeScript 帶來的好處

TypeScript 提供了靜態型別檢查,帶來了如下好處:

  • 質量:靜態型別檢查,規避型別錯誤
  • 高效:結合編輯器,智慧提示,加快開發速度和保證程式碼質量
  • 重構:靜態型別檢查,重構低風險
  • 可讀:型別宣告使程式碼更可讀

2、開發中存在的型別宣告成本

開發過程中需要更多的型別,以讓 TypeScript 的效果更好,特別是前後端協作時,將介面文件資訊轉換為 TypeScript 型別宣告,來保證專案質量。 但是手動的根據後端介面文件進行編輯,帶來很高的編輯成本。

3、降低介面文件到 TS 宣告成本的方案

typeof-jsonc lib 庫支援將 jsonc 字串轉換為 TS 宣告

待轉換介面示例

{
  "code": 0,
  "data": {
        // this is name
        "name": "hello",
        // this is age
        "age": 18
  },
  "msg": "success"
}
複製程式碼

typeof-jsonc 轉換結果

export interface IResponseData {
    code: number;
    data: IData;
    msg: string;
}

export interface IData {
    /**
     * this is name
     */
    name: string;
    /**
     * this is age
     */
    age: number;
}

複製程式碼

線上工具截圖

typeof-jsonc 將 JSONC/JSON 轉換為 TypeScript 宣告

4、typeof-jsonc 特性

  • 支援基本型別
  • 支援陣列型別合併
  • 支援註釋解析
  • 自定義型別名
  • 支援 jsonc、json、非標準的 jsonc/json 格式

相關文章