TypeScriptバージョン: 3.4.0-rc
バグ
VS Codeでいくつかのコードを編集しているときに、このエラーが発生しました。 申し訳ありませんが、レポの手順はまだありません
ERR TypeScript Server Error (3.4.0-rc)
Cannot read property 'parent' of undefined
TypeError: Cannot read property 'parent' of undefined
at collectEnclosingScopes (tsserver.js:117195:127)
at getPossibleExtractionsWorker (tsserver.js:117275:30)
at getPossibleExtractions (tsserver.js:117232:26)
at Object.getAvailableActions (tsserver.js:116745:35)
at tsserver.js:111488:128
at getIterator (tsserver.js:625:23)
at Object.next (tsserver.js:620:35)
at Object.arrayFrom (tsserver.js:1253:32)
at Object.getApplicableRefactors (tsserver.js:111487:23)
at Proxy.getApplicableRefactors (tsserver.js:121287:32)
at IOSession.Session.getApplicableRefactors (tsserver.js:130013:53)
at Session.handlers.ts.createMapFromTemplate._a.(anonymous function) (tsserver.js:128853:61)
at tsserver.js:130237:88
at IOSession.Session.executeWithRequestId (tsserver.js:130228:28)
at IOSession.Session.executeCommand (tsserver.js:130237:33)
at IOSession.Session.onMessage (tsserver.js:130259:35)
at Interface.<anonymous> (tsserver.js:131556:27)
at Interface.emit (events.js:182:13)
at Interface._onLine (readline.js:290:10)
at Interface._normalWrite (readline.js:433:12)
at Socket.ondata (readline.js:149:10)
at Socket.emit (events.js:182:13)
at addChunk (_stream_readable.js:279:12)
at readableAddChunk (_stream_readable.js:264:11)
at Socket.Readable.push (_stream_readable.js:219:10)
at Pipe.onread (net.js:636:20): Error: TypeScript Server Error (3.4.0-rc)
これがコード内で発生する可能性がある唯一の場所は次のとおりです。
while (true) {
current = current.parent;
// A function parameter's initializer is actually in the outer scope, not the function declaration
if (current.kind === SyntaxKind.Parameter) {
// Skip all the way to the outer scope of the function that declared this parameter
current = findAncestor(current, parent => isFunctionLikeDeclaration(parent))!.parent;
}
トップレベル近くのJSDoc内でパラメーターを見つけて、それを囲んでいる関数declまで歩いて行こうとしたが、見つからなかったために底を打ったと思います。
findAncestor(...)!
は非常に疑わしいので、禁止するといいでしょう...
同様のエラーが発生しました:
バージョン:typescript 3.7.0-dev.20191017
ERROR in ./node_modules/hammerjs/hammer.js
Module build failed (from ./node_modules/ts-loader/index.js):
TypeError: Cannot read property 'parent' of undefined
at getOuterTypeParameters (/<redacted>/node_modules/typescript/lib/typescript.js:39886:29)
at getOuterTypeParametersOfClassOrInterface (/<redacted>/node_modules/typescript/lib/typescript.js:39944:20)
at getDeclaredTypeOfClassOrInterface (/<redacted>/node_modules/typescript/lib/typescript.js:40217:43)
at createAnonymousTypeNode (/<redacted>/node_modules/typescript/lib/typescript.js:36601:59)
at typeToTypeNodeHelper (/<redacted>/node_modules/typescript/lib/typescript.js:36547:28)
at /<redacted>/node_modules/typescript/lib/typescript.js:36336:106
at withContext (/<redacted>/node_modules/typescript/lib/typescript.js:36381:37)
at Object.typeToTypeNode (/<redacted>/node_modules/typescript/lib/typescript.js:36336:28)
at typeToString (/<redacted>/node_modules/typescript/lib/typescript.js:36303:40)
at reportNonexistentProperty (/<redacted>/node_modules/typescript/lib/typescript.js:54143:165)
私も同様のエラーを受け取りました:
TypeScriptバージョン: 3.7.1-rc
、 3.7.2
、 3.7.3-insiders.20191123
エラーは発生しません<=3.6.4
TypeError: Cannot read property 'parent' of undefined
at Object.getDeclarationOfExpando (/<redacted>/node_modules/typescript/lib/tsc.js:8604:19)
at getTypeOfFuncClassEnumModule (/<redacted>/node_modules/typescript/lib/tsc.js:32596:40)
at getTypeOfSymbol (/<redacted>/node_modules/typescript/lib/tsc.js:32702:24)
at getExternalModuleMember (/<redacted>/node_modules/typescript/lib/tsc.js:28512:64)
at getTargetOfExportSpecifier (/<redacted>/node_modules/typescript/lib/tsc.js:28557:17)
at getTargetOfAliasDeclaration (/<redacted>/node_modules/typescript/lib/tsc.js:28600:28)
at resolveAlias (/<redacted>/node_modules/typescript/lib/tsc.js:28633:30)
at resolveSymbol (/<redacted>/node_modules/typescript/lib/tsc.js:28623:67)
at getSymbolIfSameReference (/<redacted>/node_modules/typescript/lib/tsc.js:29170:33)
at /<redacted>/node_modules/typescript/lib/tsc.js:29164:21
最も参考になるコメント
私も同様のエラーを受け取りました:
TypeScriptバージョン:
3.7.1-rc
、3.7.2
、3.7.3-insiders.20191123
エラーは発生しません
<=3.6.4