ts文件和jsdoc

时间:2019-07-11 08:17:10

标签: typescript jsdoc

Typescript和jsdoc中的Typescript具有不同的覆盖行为。我想我做错了。关于Typescriptin jsdoc的文档中没有太多信息。参见下面的示例。

打字稿版本:3.5.3

.tsconfig.json

{
  "compilerOptions": {
    "target": "ES2017",
    "module": "commonjs",
    "lib": ["es2017", "dom"],
    "allowJs": true,
    "checkJs": true,
    "noEmit": true,
    "strict": false,
    "noImplicitThis": true,
    "alwaysStrict": true,
    "esModuleInterop": true
  },
  "include": [
    "*.js",
    "*.ts"
  ]
}

js文件中的有效打字稿

class A {
    /**
     * @param {number} a
     * @returns {string}
     */
    apply(a) {
        return "";
    }
}

/**
 * @extends {A}
 */
class B extends A {
    /**
     * @param {object} a
     * @returns {string}
     */
    apply(a) {
        return "";
    }
}

ts文件中的无效打字稿

class A {
    apply(a: number): string {
        return "";
    }
}

class E extends A {
    apply(some: object) { // got error here as function signature is different
        return "";
    }
}

预期A.js中的相同错误

1 个答案:

答案 0 :(得分:0)

object,在打字稿中并不表示任何含义,请使用Object,并使用大写的'O'