如何将JSDoc与通用打字稿一起使用?

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

将JSDoc用于一般打字稿功能的最佳方法是什么。下面是我尝试过的方法,但是我想有一种最佳方法,因为有信息说JSDoc types may be moved to TypeScript types.ts(80004)

我单击了“快速修复”,但是使功能弄乱了。

/**
 * @description  execute in parallel promises by chunks
 * @type <ReturnType> : the type of data to be returned
 * @param arrayPromises : the array of promises to execute
 * @param chunks : the value of chunks
 * @returns : an array of returnType
 */
const runPromisesInParallelbyChunks = async <ReturnType>(
    arrayPromises: Array<() => Promise<ReturnType>>,
    chunks: number
): Promise<ReturnType[]> => {
    const result: ReturnType[] = [];
    let resu: ReturnType[] = [];
    let cnt: number = 0;
    const chain = async (
        shrinkArray: Array<() => Promise<ReturnType>>
    ): Promise<ReturnType> => {
        if (!shrinkArray.length) {
            return new Promise<ReturnType>(resolve => resolve());
        }
        // console.log(shrinkArray.length);
        const i: number = cnt++;
        const res: ReturnType = await shrinkArray.shift()!();
        await delayExecution(100);
        // SAVE RESULT OF THE EXECUTION OF THE FUNCTION
        result[i] = res;
        return chain(shrinkArray);
    };
    const arrChains: Array<Promise<ReturnType>> = [];
    while (chunks-- > 0 && arrayPromises.length > 0) {
        arrChains.push(chain(arrayPromises));
    }
    // RESULT IS AN ARRAY OF THE RESULT OF EACH PROMISE
    resu = await Promise.all(arrChains).then(() => result);

    return resu;
};
typescript generics lint jsdoc
1个回答
0
投票

使用Typescript,您不需要JSDoc类型。 TS类型已经是规范,您不必将它们与JSDoc类型重复。您的函数已经输入,无需通过注释来指示这些类型。

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