我想只使用React.js脚本的本地副本设置React.js应用程序,或者只使用正确的CDN链接。 React仅在CDN链接中注册,而不是在本地存储的React.js脚本副本中注册。这是为什么? 其次,尽管在仅使用CDN链接时注册了React,但我的元素不会呈现。为什么不?我别无选择,只能使用NPM来安装所有东西吗?
<html>
<head>
<meta charset="UTF-8">
<title>First App</title>
</head>
<body>
<div id="app"></div>
<!-- This works (React is registering) -->
<script crossorigin src="https://unpkg.com/react@16/umd/react.development.js"></script>
<script crossorigin src="https://unpkg.com/react-dom@16/umd/react-dom.development.js"></script>
<!-- This doesn't (React is NOT registering) -->
<!-- <script type="../scripts/react.development.js"></script> -->
<!-- <script type="../scripts/react.dom.js"></script> -->
<script>
console.log('App.js is running!');
var Template = React.createElement(
"h1",
{ id: "someid" },
"This is JSX from app"
)
// Identifying the element by id
var AppRoot = document.getElementById('app')
ReactDOM.render(Template, AppRoot)
</script>
</html>
答案 0 :(得分:1)
好的,我在我的mashine上运行你的代码,第一次真的很难检测到错误。您的脚本属性为type
,而不是src
。有正确的变体:
<!-- This doesn't (React is NOT registering) -->
<script src="../scripts/react.development.js"></script>
<script src="../scripts/react.dom.js"></script>
如果您下载了正确的文件,它应该可以正常工作。
答案 1 :(得分:0)
使用<script src="../scripts/react.development.js"></script>
另请注意../指父目录./scripts如果脚本文件夹在包含HTML的同一文件夹中