TypeScriptバージョン: 2.6.0-dev.20171018
コード
次のようなa.tsファイルを作成します。
export const PI = 3.14;
次のようなb.tsファイルを作成します。
PI
予想される行動:
getCodeFixes
を呼び出すと、 import code fixes
が返されます。ComplentionEntryDetail
はコードアクション、詳細などを返す必要があります実際の動作:
2回の呼び出しgetCodeFixes
、 ComplentionEntryDetail
はError processing request. Cannot read property 'length' of undefined
失敗します
{
"seq": 0,
"type": "response",
"command": "getCodeFixes",
"request_seq": 640,
"success": false,
"message": "Error processing request. Cannot read property 'length' of undefined\nTypeError: Cannot read property 'length' of undefined\n at Object.firstDefined (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:1322:34)\n at tryGetModuleNameFromTypeRoots (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:76001:23)\n at getModuleSpecifierForNewImport (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:75943:17)\n at getCodeActionForAddImport (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:76131:20)\n at getCodeActionForImport (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:75869:26)\n at C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:76221:60\n at forEachExternalModule (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:76238:21)\n at getActionsForNonUMDImport (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:76205:13)\n at Object.getImportCodeActions [as getCodeActions] (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:76180:19)\n at C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:74963:33\n at Object.forEach (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:1312:30)\n at Object.getFixes (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:74962:16)\n at C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:80069:35\n at Object.flatMap (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:1550:25)\n at Object.getCodeFixesAtPosition (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:80067:23)\n at IOSession.Session.getCodeFixes (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:86471:64)\n at Session.handlers.ts.createMapFromTemplate._a.(anonymous function) (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:85384:61)\n at C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:86625:88\n at IOSession.Session.executeWithRequestId (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:86616:28)\n at IOSession.Session.executeCommand (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:86625:33)\n at IOSession.Session.onMessage (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:86645:35)\n at Interface.<anonymous> (C:\\Users\\azerr\\WS2\\___aa\\node_modules\\typescript\\lib\\tsserver.js:87818:27)\n at emitOne (events.js:96:13)\n at Interface.emit (events.js:188:7)\n at Interface._onLine (readline.js:239:10)\n at Interface.<anonymous> (readline.js:376:12)\n at Array.forEach (native)\n at Interface._normalWrite (readline.js:375:11)\n at Socket.ondata (readline.js:107:10)\n at emitOne (events.js:96:13)\n at Socket.emit (events.js:188:7)\n at readableAddChunk (_stream_readable.js:176:18)\n at Socket.Readable.push (_stream_readable.js:134:10)\n at Pipe.onread (net.js:548:20)"
}
どうもありがとう@ andy-ms
これで、typescript.javaは自動インポートによる完了をサポートできるようになりました。これはすばらしいことです。
最も参考になるコメント
どうもありがとう@ andy-ms
これで、typescript.javaは自動インポートによる完了をサポートできるようになりました。これはすばらしいことです。