你如何在Javascript中为TypeScript编译器编写JSDoc?

时间:2017-12-06 15:28:48

标签: javascript reactjs typescript jsdoc

我知道有能力用TS编译器检查JS代码。我知道TS编译器理解JSDoc注释(https://github.com/Microsoft/TypeScript/wiki/JSDoc-support-in-JavaScript)。

我想在我的React项目中使用TS编译器,我不知道如何用JSDoc指定道具定义:(

我试过

import pyspark.sql.functions as F
from pyspark.sql.types import *

def get_combinations(lis):
   final = []

   for li in lis:
       if [y for y in final if [z for z in li if z in y]]:
           found = [y for y in final if [z for z in li if z in y]][0]
           to_add = list(set(found + li))
           final[final.index(found)] = to_add
       else:
           final.append(li)
   return final

apply_udf = F.udf(lambda x:get_combinations(x),ArrayType(ArrayType(IntegerType())))

df = df.groupby('id').agg(F.collect_list('num_list').alias('num_list'))\
        .select(['id', F.explode(apply_udf('num_list')).alias('num_list')])

但它不起作用。

1 个答案:

答案 0 :(得分:2)

要使IntelliSense和类型检查工作,您必须为Component类指定prop类型,因为在typings中它被描述为泛型对象。所以,如果你尝试这样的事情

/**
 * @typedef {Object} Props
 * @prop {Function} breadcrumbChange
 * @prop {string} folderId
 * @extends React.Component<Props>
 */
class PropertyDetails extends React.Component {
}

它应该有用