Я создал новый основной проект asp.net с реагирующим шаблоном и настроил для него Typescript.
Затем я создал очень простой файл с именем Test.tsx
со следующим кодом
import React from 'react';
class Test extends React.Component {
render() {
return (
<div/>
);
}
}
export default Test;
Это привело к ошибке
Ошибка TS1192 (TS) Module '«*** / React / React / ClientApp / node_modules / @ types / реагировать / индекс» не имеет экспорта по умолчанию.
Затем я скопировал вставленный файл в то же место и назвал его Test2.tsx
.Ошибка просто волшебным образом исчезла.
Я сделал еще несколько копаний и обнаружил, что если я добавлю файл, щелкнув правой кнопкой мыши -> Добавить новый элемент -> Файл JSX TypeScript, то он добавит запись в .csproj
file
<ItemGroup>
<TypeScriptCompile Include="ClientApp\src\Test.tsx" />
</ItemGroup>
Удаление этой строки устранит ошибку компиляции.Но почему это происходит ??Нужно ли мне идти и удалять эту строку каждый раз, когда я хочу добавить новый файл TSX?
Использование Visual Studio 2017 и TypeScript 3.1.3