浏览代码

make host implement getScriptKind, #203

Johannes Rieken 8 年之前
父节点
当前提交
9b5c885b40
共有 1 个文件被更改,包括 13 次插入0 次删除
  1. 13 0
      src/worker.ts

+ 13 - 0
src/worker.ts

@@ -93,6 +93,19 @@ export class TypeScriptWorker implements ts.LanguageServiceHost {
 		};
 	}
 
+	getScriptKind?(fileName: string): ts.ScriptKind {
+		const suffix = fileName.substr(fileName.lastIndexOf('.') + 1);
+		switch (suffix) {
+			case 'ts': return ts.ScriptKind.TS;
+			case 'tsx': return ts.ScriptKind.TSX;
+			case 'js': return ts.ScriptKind.JS;
+			case 'jsx': return ts.ScriptKind.JSX;
+			default: return this.getCompilationSettings().allowJs
+				? ts.ScriptKind.JS
+				: ts.ScriptKind.TS;
+		}
+	}
+
 	getCurrentDirectory(): string {
 		return '';
 	}