【发布时间】:2016-06-11 22:01:00
【问题描述】:
我才一周才学习 React,所以我是新手,我正在尝试编写一个简单的 todo 应用程序。
最初我将所有组件都写在一个文件中,然后将该文件加载到 HTML 文件中,效果很好。现在我正在重构并尝试将组件拆分为不同的文件。
我的完整代码在我的 Github https://github.com/yasgreen93/todolist-react extracting-files 分支上。
我已将每个组件拆分为不同的文件,并在脚本标签中将它们链接到我的 HTML 中。这是我的 HTML 文件的样子:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Todo List</title>
<link rel="stylesheet" href="css/styles.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.0.1/react.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.0.1/react-dom.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/babel-core/5.6.16/browser.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.2/jquery.min.js"></script>
</head>
<body>
<div id="container"></div>
<script type="text/babel" src="scripts/components/TodoListApp.js"> </script>
<script type="text/babel" src="scripts/components/CompleteTodo.js"></script>
<script type="text/babel" src="scripts/components/TodoList.js"></script>
<script type="text/babel" src="scripts/components/SingleTodo.js"></script>
<script type="text/babel" src="scripts/components/AddTodo.js"></script>
<script type="text/babel" src="scripts/components/CompleteTodoButton.js"></script>
<script type="text/babel">
ReactDOM.render(
<TodoListApp url="/api/todos" updateUrl="/api/todos/update" pollInterval={2000}/>,
document.getElementById('container')
);
</script>
</body>
</html>
在控制台中,我总是收到错误消息Uncaught ReferenceError: TodoListApp is not defined。我尝试以不同的顺序加载它们但没有成功。我还观看了许多视频,他们在不使用 webpack 的情况下使用非常相似的方法,并且对他们有用。我想先在不使用 webpack 的情况下让它工作,然后继续学习。
谁能看出我哪里出错了?
【问题讨论】:
标签: javascript html reactjs