Closed MasatoDev closed 2 months ago
Done https://github.com/MasatoDev/boostest/issues/4.
type ObjKey = { obj_name: string; obj_val: number; }; export class ArgObjClass { name: string; age: number; obj_key: ObjKey; obj_key2: ObjKey; constructor({ name, age, obj_key, obj_key2 }: { name: string; age: number; obj_key: ObjKey; obj_key2: ObjKey }) { this.name = name; this.age = age; this.obj_key = obj_key; this.obj_key2 = obj_key2; } }
import { ArgObjClass } from './types/pattern/arg_obj_class'; let _ = boostestArgObjClass<typeof ArgObjClass>(ArgObjClass);
The above results are as follows.
export function boostestArgObjClass<T extends abstract new (...args: any) => any>(ArgObjClass): T { return new ArgObjClass({ 'name':'test string data', 'age':10, 'obj_key':object_obj_key_boostestArgObjClass(), 'obj_key2':object_obj_key2_boostestArgObjClass() }); } export function object_obj_key_boostestArgObjClass<T>(args?: Partial<T>): T { return ({ 'obj_name':'test string data', 'obj_val':10, ...args } as T); } export function object_obj_key2_boostestArgObjClass<T>(args?: Partial<T>): T { return ({ 'obj_name':'test string data', 'obj_val':10, ...args } as T); }
Done https://github.com/MasatoDev/boostest/issues/4.
The above results are as follows.