如果您没有 index.html,如何在 index.html 中运行脚本以做出反应
Posted
技术标签:
【中文标题】如果您没有 index.html,如何在 index.html 中运行脚本以做出反应【英文标题】:How to run scripts in index.html in react if you don't have index.html 【发布时间】:2022-01-08 19:09:05 【问题描述】:对不起,我对 React 还是新手。
我有需要添加几个 scrypts 的 React web App。
Althogh scrypts 必须在 index.html
的 body 标记内。
像这样:
<!DOCTYPE html>
<html lang="en">
<head>
<title>React example</title>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<style media="only screen">
html,
body,
#root
height: 100%;
width: 100%;
</style>
</head>
<body>
<div id="root">Loading React example…</div>
<script
src="https://unpkg.com/systemjs@0.19.39/dist/system.src.js"
>
</script>
<script src="systemjs.config.js"></script>
<script>
System.import('./index.jsx').catch(function(err)
console.error(err);
);
</script>
</body>
</html>
但问题是我的应用没有index.html
,它只有index.js
。
我试图用document.write
添加这个scrypt,但我认为这是一种错误的做法。
除此之外,我还有无法理解的语义和句法错误,它们也附在here
【问题讨论】:
【参考方案1】:您可以在您的反应代码中附加脚本:
let script = document.createElement("script");
script.setAttribute("src", scriptUrl);
script.setAttribute("type", "text/javascript");
(这适用于链接脚本,但嵌入脚本可以以类似的方式完成)
【讨论】:
嗨@Judith 谢谢你的回答。您能否告诉我是否使用嵌入式 scrypts 我应该将源代码传递给这样的 script.setAttribute("src", sourceCodeOfScrypt);用“src”? 应该是script.innerHTML = 'source as string'
以上是关于如果您没有 index.html,如何在 index.html 中运行脚本以做出反应的主要内容,如果未能解决你的问题,请参考以下文章
如何从 index.html 自定义元素标签接收数组作为@Input?
从 localhost 打开 file:///path/index.html
如何通过 django html 按钮执行 python 代码?