我是 React 的新手。想要在单独的文件中使用小组件开发应用程序并将它们导入我的 App.js
我试过但无法弄清楚我做错了什么。
这是我的 html:
<!DOCTYPE html>
<html>
<head>
<title>App</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no">
<script src="https://unpkg.com/react@15.3.2/dist/react.js"></script>
<script src="https://unpkg.com/react-dom@15.3.2/dist/react-dom.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/babel-core/5.8.23/browser.min.js"></script>
</head>
<body>
<script type="text/babel" src="js/App.js"></script>
</body>
</html>
这是我的 App.js:( 来自 js/ 目录)
import MyComp from 'components/MyComp';
class App extends React.Component {
render() {
return (
<MyComp />
)
}
}
ReactDOM.render(
<App />,
document.body
);
这是我的 MyComp.js (来自 js/components/ 目录)
class MyComp extends React.Component{
render() {
return (
<div>
Hello World!
</div>
)
}
}
export default MyComp;
如果我尝试这种方式,我什么也看不到。而如果我在 App.js 中创建 MyComp
类,它就像一个魅力。
任何建议我做错了什么?
原文由 Omer 发布,翻译遵循 CC BY-SA 4.0 许可协议
在大多数情况下,您所拥有的应该可以工作,但我不太确定为什么不行。我建议将“./”添加到导入位置,但如果不正确,它会出错并且不会默默消失。
请允许我发布一个更简单的版本,我知道它确实有效:
./index.js :
./组件/应用程序:
这应该是使其工作所需的一切。
如果你想进一步缩短上面的内容,通过删除底部的
export
行,一种不太传统的方法是这样定义类……