Реагировать: Не могу импортировать .tsx файл - PullRequest
0 голосов
/ 15 апреля 2020

Новое в использовании TypeScript с React. Когда я импортирую компонент из файла .tsx, он предполагает, что это файл. js по умолчанию. Ошибка говорит о том, что в этом каталоге нет файла About. js или Contact. js. Кроме того, TS-линтер не позволит мне добавить .tsx в конец пути к файлу. Как это исправить? Я использовал 'npx create-response-app имя_проекта --typescript'. Вот мой код

import React from 'react'
import { BrowserRouter, Route } from 'react-router-dom'
import Home from './views/Home'
import About from './views/About'
import Contact from './views/Contact'
import Navbar from './components/Navbar'
import Footer from './components/Footer'

const App: React.FC<{}> = () => {
  return (
    <BrowserRouter>
      <Navbar title="Website" links={['About', 'Contact']} color="blue"/>

      <Route exact path="/" component={Home}/>
      <Route path="/home" component={Home}/>
      <Route path="/about" component={About}/>
      <Route path="/contact" component={Contact}/>

      <Footer/>
    </BrowserRouter>
  )
}

export default App

1 Ответ

0 голосов
/ 15 апреля 2020

Использовали ли вы приложение для создания реакции? В случае, если вы не использовали или использовали и извлекли его, вы должны добавить эту конфигурацию в файл конфигурации вашего веб-пакета:

{
  resolve: {
    extensions: [".js", ".json", ".ts", ".tsx"],
  },
}

В случае, если вы использовали приложение createact и не извлекли его, вы можете добавить эти правила к вашему typescript-eslint

module.exports = {
  settings: {
    'import/resolver': {
      'node': {
        'extensions': ['.js','.jsx','.ts','.tsx']
      }
    }
  }
};
...