ts代码
export function test<T extends object>(data: T): Record<'test', T> {
return { test: data }
}
class Helper<T extends object> {
test(data: T) {
return test<T>(data)
}
}
type TestType<T extends object> = ReturnType<Helper<T>['test']>
interface DataType {
code: string
}
const testDate = test<DataType>({ code: '123' })
class TestClass<T extends TestType<any>> {
data: T
get test() {
return this.data.test
}
constructor(data: T) {
this.data = data
}
}
const testInstance = new TestClass(testDate)
testInstance.test
test那的类型不对
已使用infer解决