@@ -232,7 +232,7 @@ export default class genTypeSchema extends typescriptToFileDatas {
232232 if ( file ) {
233233 this . extendJsonData ( file , name , realRef ) ;
234234 }
235- fileJson [ name ] = _ . cloneDeep ( realRef ) ;
235+ fileJson [ name ] = fileJson [ name ] || _ . cloneDeep ( realRef ) ;
236236 }
237237 // 对象类型
238238 if ( result . properties && Object . keys ( result . properties ) ) {
@@ -311,6 +311,7 @@ export default class genTypeSchema extends typescriptToFileDatas {
311311
312312 // 兼容import外部引入与内部引用两种方式
313313 let $refJson = fileJson [ firstKey ] || fileJson [ $refKey ] || { } ;
314+ $refJson = _ . cloneDeep ( $refJson )
314315 if ( ( entry as any ) . keySet . has ( $refKey ) ) {
315316 ( entry as any ) . refKeyTime [ $refKey ] = ( ( entry as any ) . refKeyTime [ $refKey ] || 0 ) + 1 ;
316317 return ;
@@ -448,6 +449,9 @@ export default class genTypeSchema extends typescriptToFileDatas {
448449 if ( ! extra ) return resType ;
449450
450451 if ( resType ) {
452+ if ( extra && extra . $ref ) {
453+ extra = _ . cloneDeep ( attrCommonHandle ( extra , false ) as AnyOption ) ;
454+ }
451455 const extraKeys = extra . enum || [ ] ;
452456 if ( key === 'Omit' ) {
453457 const res = deleteJsonSchemaKeys ( resType , extraKeys ) ;
@@ -606,13 +610,6 @@ export default class genTypeSchema extends typescriptToFileDatas {
606610 typeJson = handleExtends ( typeJson ) ;
607611 }
608612
609- // 处理默认值
610- if ( typeJson . typeParams ) {
611- const defaultNames = handleGenericDefaultType ( typeJson . properties , typeJson . typeParams ) ;
612- if ( defaultNames . length ) {
613- delete typeJson . typeParams ;
614- }
615- }
616613
617614 // 对象类型
618615 if ( typeJson . properties && Object . keys ( typeJson . properties ) ) {
0 commit comments