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
中的相同错误
答案 0 :(得分:0)
object,在打字稿中并不表示任何含义,请使用Object,并使用大写的'O'