[英]Embedding React app as a widget with Javascript is failing with different messages on Firefox and Chrome
按照本网站上的步骤,我可以使用 iframe 在另一个网站上嵌入一个反应应用程序作为小部件:
<html>
<iframe src="http://localhost:3000"><iframe>
</html>
嵌入 Javascript(第二种方法)失败,并在 Firefox 上显示以下错误消息:
The script from “http://localhost:3000/static/js/main.dbfc58d6.chunk.js” was loaded even though its MIME type (“text/html”) is not a valid JavaScript MIME type.
SyntaxError: expected expression, got '<'
以下是我嵌入反应应用程序的代码:
<html lang="en">
<body><noscript>You need to enable JavaScript to run this app.</noscript>
<div id="root"></div>
<script type="text/javascript" src="http://localhost:3000/static/js/main.dbfc58d6.chunk.js"></script>
</body>
</html>
在 Chrome 上,警告消息显示如下:
index.html:1 A cookie associated with a cross-site resource at http://localhost/ was set without the `SameSite` attribute. A future release of Chrome will only deliver cookies with cross-site requests if they are set with `SameSite=None` and `Secure`. You can review cookies in developer tools under Application>Storage>Cookies and see more details at https://www.chromestatus.com/feature/5088147346030592 and https://www.chromestatus.com/feature/5633521622188032.
index.html:10 Cross-Origin Read Blocking (CORB) blocked cross-origin response http://localhost:3000/static/js/main.dbfc58d6.chunk.js with MIME type text/html. See https://www.chromestatus.com/feature/5629709824032768 for more details.
寻求指导以解决此问题。 感谢您的阅读。
更新:参考@Thai 的回答,我将我的源文件指定为由 react 构建操作生成的文件。 如何指定正确的 js 文件来解决我的问题?
在帮助下解决了这个问题 - 问题是由于我创建构建的方式造成的。
我们不能使用 CRA 自带的默认构建工具。 请改用rescripts/cli 。
npm install @rescripts/cli --save-dev
更新 package.json “脚本”以使用“脚本”运行:
"scripts": { "start": "rescripts start", "build": "rescripts build", "test": "rescripts test", "eject": "rescripts eject" },
构建您的应用程序
npm run buiild
嵌入应用程序:
<script src="https://localhost:3000/static/js/bundle.js"></script>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.