在打字稿JSDoc约束泛型

问题描述 投票:1回答:1

我使用打字稿的JSDoc形式,我试图用一个通用的扩展的对象。我的编辑是给我的index.js码声明typeMyInterface<T>的参数打字稿错误,说Type 'T' does not satisfy the constraint '{ a: number; }'.

如何指定我接受,制约了JSDoc打字稿对象的泛型参数?

// index.d.ts
declare interface MyInterface<T extends {a: number}> {
  b: string;
}


// index.js
/**
 * @template T
 * @param {MyInterface<T>} impl
 */
function doStuff(impl) {
  console.log(impl);
}
typescript jsdoc
1个回答
0
投票
/**
 * @template {{a: number}} T
 * @param {MyInterface<T>} impl
 */

@template约束条件在pull request 24600实施

© www.soinside.com 2019 - 2024. All rights reserved.