Webpack:ERROR 在./src/index.tsx 中找不到模块:错误:无法解析'...'中的'./App'。

3
当我尝试使用webpack-dev-server启动我的应用程序时,出现了以下错误:
ERROR in ./src/index.tsx
Module not found: Error: Can't resolve './App' in 
'C:\Users\user\Desktop\react-resources-boilerplate\src'
 @ ./src/index.tsx 15:28-44
 @ multi (webpack)-dev-server/client?http://localhost:8080 ./src/index.tsx

这是我的Webpack配置文件:

const HtmlWebPackPlugin = require('html-webpack-plugin');
const path = require('path');

module.exports = {
  entry: path.resolve(__dirname, 'src', 'index.tsx'),
  module: {
    rules: [
      {
        test: /\.ts|\.tsx$/,
        loader: "ts-loader",
      },
    ]
  },

  plugins: [
    new HtmlWebPackPlugin({
      template: "./src/index.html",
      filename: "./index.html"
    })
  ]
};

这是我的tsconfig文件:

{
  "compilerOptions": {
    "target": "es5",
    "module": "commonjs",
    "jsx": "react",
    "sourceMap": true,
    "outDir": "./dist",
    "rootDir": "./src",
    "strict": true,
    "noImplicitAny": true,
    "esModuleInterop": true
  }
}

这是我的index.tsx文件:

import * as React from 'react';
import { render } from 'react-dom';
import App from './App';

const root = document.querySelector('#root')
render(<App />, root)

感谢您的帮助。

谢谢。


你的文件结构是怎样的?你确定你的应用程序文件和索引文件在同一个目录下吗? - ApplePearPerson
是的,它也在src目录中。 - Thibault Savary
如果我将App组件设置在./src/components中,我会得到以下错误: ERROR in ./src/index.tsx Module not found: Error: Can't resolve './components/App' in 'C:\Users\user\Desktop\react-resources-boilerplate\src' @ ./src/index.tsx 15:28-55 @ multi (webpack)-dev-server/client?http://localhost:8080 ./src/index.tsx - Thibault Savary
2个回答

14

将以下内容添加到您的webpack配置文件中:

module.exports = {
    // ...
    // existing code goes here
    // ...

    resolve: {
        extensions: ['.ts', '.tsx'],
    },
};

文档中查看更多信息。


这对我起了作用。 - Eric. M

0

我曾经遇到过类似的问题,原因是react-scripts的webpack配置文件找不到我的tsconfig文件,因为它的文件名是:

.tsconfig.json

而不是

tsconfig.json


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接