为什么我导入 React 时服务器返回 MIME 类型为“text/html”?

问题描述 投票:0回答:3

这是我的js:

import React from './node_modules/react';
import ReactDOM from './node_modules/react-dom';

let thePage = React.createElement(
  'main',
  null,
  'lol'
);

ReactDOM.render(thePage, document.getElementById('app'));

但是当我在浏览器中打开其关联的 HTML 页面时,出现此错误:

Failed to load module script: Expected a JavaScript module script but the server responded with a MIME type of "text/html". Strict MIME type checking is enforced for module scripts per HTML spec.

这是我的 React 文件夹的样子,供参考: Link

哦,html 和 js 文件位于“my-app”文件夹中。

我发现似乎没有“react.js”或任何此类文件,但我尝试重新安装它,结果总是如此,所以我不知道这是否是一个问题或不。

知道如何修复此错误吗?我做错了什么?

javascript reactjs
3个回答
1
投票

您可能没有像您应该的那样启动应用程序(双击

index.html
文件?)

如果您使用react-scripts来创建应用程序(如果您是初学者,您可能应该这样做),然后使用

npm run start
,它将代码和导入编译到一个JavaScript捆绑文件中并启动一个Web页面 http://localhost:3000

这将使常规导入正常工作:

import React from 'react';
import ReactDOM from 'react-dom';

部署到远程 Web 服务器时,请使用

npm run build
并将
build
文件夹的内容复制到服务器。


0
投票

这里最有可能的情况是它找不到脚本文件,因此脚本获取返回 404,这将是一个文本页面,表示找不到它。

仔细检查index.html中的位置是否正确


0
投票

只需清理缓存和cookie。然后强制刷新。这解决了我的问题。

© www.soinside.com 2019 - 2024. All rights reserved.