Better error message for mistaken import (#40)

Issue number of the reported bug or feature request: microsoft#13601
This commit is contained in:
Mukesh Prasad
2019-10-01 17:27:38 +01:00
committed by Max Heiber
parent 2d96a163d1
commit 03a3589225
7 changed files with 81 additions and 52 deletions
+23 -2
View File
@@ -2202,7 +2202,18 @@ namespace ts {
));
}
else {
error(node.name, Diagnostics.Module_0_has_no_default_export, symbolToString(moduleSymbol));
if (moduleSymbol.exports && moduleSymbol.exports.has(node.symbol.escapedName)) {
error(
node.name,
Diagnostics.Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead,
symbolToString(moduleSymbol),
symbolToString(node.symbol),
);
}
else {
error(node.name, Diagnostics.Module_0_has_no_default_export, symbolToString(moduleSymbol));
}
}
}
else if (hasSyntheticDefault) {
@@ -2310,7 +2321,17 @@ namespace ts {
}
}
else {
error(name, Diagnostics.Module_0_has_no_exported_member_1, moduleName, declarationName);
if (moduleSymbol.exports && moduleSymbol.exports.has(InternalSymbolName.Default)) {
error(
name,
Diagnostics.Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead,
moduleName,
declarationName
);
}
else {
error(name, Diagnostics.Module_0_has_no_exported_member_1, moduleName, declarationName);
}
}
}
return symbol;
+8
View File
@@ -1043,6 +1043,14 @@
"category": "Error",
"code": 1358
},
"Module '{0}' has no default export. Did you mean to use 'import { {1} } from {0}' instead?": {
"category": "Error",
"code": 1359
},
"Module '{0}' has no exported member '{1}'. Did you mean to use 'import {1} from {0}' instead?": {
"category": "Error",
"code": 1360
},
"The types of '{0}' are incompatible between these types.": {
"category": "Error",