# 拆分组件
>想一想我们在Vue中是如何进行管理组件的,会不会把组件和业务写在一起,答案是否定的。我们一般会将组件书写在单个文件中。
我们可以新建文件夹`components`来单独管理单个组件。
## 目录结构:
~~~
src
| ├─components
| ├─├─Hello.js
| ├─main.js
package.json
~~~
## Hello.js
~~~
import React from 'react';
export default function Hello(props) {
return <div>
体验React组件{props.name} {props.price}
</div>;
}
~~~
## 注意
在这里面要注意 Hello.js似乎是没有用到导入的React。有的同学会认为要将其删除。那么应该删除么?
<font color="red">不可以删除</font> 千万要注意。我们可以先删除看一下它的报错。
```
Uncaught ReferenceError: React is not defined
```
我们有提到过 React在运行JSX其实还是利用了React.createElement这个函数来创建虚拟DOM。这里截图看一下。
![](https://box.kancloud.cn/2d48767a52de1eb3645243401d43ef92_605x321.png)
## 总结:
拆分成单个普通组件千万要注意不可以将一定要手动引入React否则会报错。
- webpack复习
- React基础
- 前端三大主流框架对比
- React中几个核心的概念
- React基础语法
- React JSX语法
- React组件
- 普通组件
- 组件通信-父向子传递
- 组件拆成单个文件
- 面向对象复习
- Class组件基础
- Class组件的私有状态(私有数据)
- 案例:实现评论列表组件
- 组件样式管理
- 组件样式分离-样式表
- CSS模块化
- 生命周期
- React组件生命周期
- Counter组件来学习组件生命周期
- 生命周期总结
- 生命周期案例
- React评论列表
- React双向数据绑定
- React版todolist
- 其它提高(了解)
- 组件默认值和数据类型验证
- 绑定this并传参的三种方式
- 祖孙级和非父子组件传递数据(了解)
- React路由
- 路由基础
- 动态路由
- 路由严格模式
- 路由导航定位
- 路由重定向
- 路由懒加载
- WolfMovie项目
- 项目初始化
- AntDesign使用
- 其它相关了解