js-to-interface
TypeScript icon, indicating that this package has built-in type declarations

0.0.6 • Public • Published

json-to-interface

json 转为 typescript 接口

关于使用

npm i js-to-interface

这是属于 interface 基础 sdk

const jstots = require('js-to-interface');
let json = {
  a: 1,
  b: 2,
  arr: [
    { a: 1, b: 3 },
    { d: 5, h: 6 }
  ],
  c: { ca: 1, c: { f: 5 } },
  d: { f: 5 }
};
const data = jstots(json, { fKey: 'json' });
data.forEach(i => {
  console.log(i);
});
const json = {
  phone: 12312312312,
  name: 'Hello',
  obj: {
    cc: 1,
    dd: 2
  },
  sOBj: {
    dd: 5,
    g: 7,
    e: {
      c: 'y'
    }
  },
  arr: [1, 23, 4, 5],
  list: [
    {
      cc: 1,
      dd: 2
    },
    {
      cc: 1,
      g: 3,
      bb: 5
    }
  ]
};

经过转换

interface Test {
  test: Array<TestRow>;
}
interface TestRow {
  a: number;
  b: number;
}

interface Json {
  phone: number;
  name: string;
  objL: Obj;
  sObj: SObj;
  arr: (number | string)[];
  list: List[];
}
interface Obj {
  cc: number;
  dd: number;
}
interface SObj {
  dd: number;
  g: number;
  e: E;
}
interface E {
  c: string;
}

interface List {
  cc: number;
  dd?: number;
  g?: number;
  bb?: number;
}

Package Sidebar

Install

npm i js-to-interface

Weekly Downloads

0

Version

0.0.6

License

MIT

Unpacked Size

45.9 kB

Total Files

41

Last publish

Collaborators

  • weishunyu