diff --git a/src/compiler/watchPublic.ts b/src/compiler/watchPublic.ts index 2673b11681050..e56fea371993a 100644 --- a/src/compiler/watchPublic.ts +++ b/src/compiler/watchPublic.ts @@ -635,7 +635,7 @@ namespace ts { function reloadFileNamesFromConfigFile() { writeLog("Reloading new file names and options"); - const result = getFileNamesFromConfigSpecs(configFileSpecs, getNormalizedAbsolutePath(getDirectoryPath(configFileName), currentDirectory), compilerOptions, parseConfigFileHost); + const result = getFileNamesFromConfigSpecs(configFileSpecs, getNormalizedAbsolutePath(getDirectoryPath(configFileName), currentDirectory), compilerOptions, parseConfigFileHost, extraFileExtensions); if (updateErrorForNoInputFiles(result, getNormalizedAbsolutePath(configFileName, currentDirectory), configFileSpecs, configFileParsingDiagnostics!, canConfigFileJsonReportNoInputFiles)) { hasChangedConfigFileParsingErrors = true; } @@ -748,6 +748,7 @@ namespace ts { fileOrDirectoryPath, configFileName, configFileSpecs, + extraFileExtensions, options: compilerOptions, program: getCurrentBuilderProgram(), currentDirectory, diff --git a/src/testRunner/unittests/tscWatch/watchApi.ts b/src/testRunner/unittests/tscWatch/watchApi.ts index 6dcf1b30f7b35..0e648aaa1295c 100644 --- a/src/testRunner/unittests/tscWatch/watchApi.ts +++ b/src/testRunner/unittests/tscWatch/watchApi.ts @@ -121,6 +121,11 @@ namespace ts.tscWatch { ); const watch = createWatchProgram(watchCompilerHost); checkProgramActualFiles(watch.getProgram().getProgram(), [mainFile.path, otherFile.path, libFile.path]); + + const other2 = `${projectRoot}/other2.vue`; + sys.writeFile(other2, otherFile.content); + checkSingleTimeoutQueueLengthAndRun(sys); + checkProgramActualFiles(watch.getProgram().getProgram(), [mainFile.path, otherFile.path, libFile.path, other2]); }); }); }