react-学习记录
react简介
- 起源Facebook内部项目
- 两个概念
- 库library: 小 而 巧,可以很方便的从一个库切换到另一个库,代码几乎不改变
- 框架framework :大 而 全,提供一整套方案,切换到另一个框架很困难
- mvc框架 mvvm是什么
前端三大主流框架
- angular 最早
- vue最火 关注的人最多
- react最流行 用的人最多
react与vue对比
-
组件化方面
-
什么是模块化
是从代码逻辑的角度进行分析,把一些可复用的代码抽离为单个模块,便于项目的维护和开发
-
什么是组件化
是从UI界面的角度进行分析,把一些可复用的UI元素抽离为单独的组件(比如轮播图),便于项目的维护和开发
-
组件化的好处
复用 方便拼接
-
vue组件
- .vue文件创建组件
- template
- script
- style
- .vue文件创建组件
-
react组件
- 一切用js表现
-
移动app开发
- weex vue方面的
- reactnative react方面的
-
为什么学习react
- 设计优秀 一切基于js
- 开发团队实力强大
- 社区强大
- 无缝转到reactnative
- 大企业都选用
react两个核心概念 多看黑马p06 07
-
虚拟dom
- dom:文档对象模型,浏览器中的概念,用js对象来表示页面中的dom元素,并提供操作dom的api
- react的虚拟dom:框架中的概念,用js对象来模拟页面中的dom元素
- 好处:页面dom元素高效更新
-
diff算法
-
webpack初始化项目
- npm init -y初始化
- 创建目录结构
- 安装本地webpack 及cli
- 默认约定大于配置 就不需要手动配置了
- 默认入口为index.js
- 默认出口为dist/main.js
- webpack-dev-server打包好的main.js托管与内存中 看不见
- 配置html-webpack-plugin插件
-
在项目中使用react
- 运行cnpm i react react-dom -S安装包
- react 用于创建组件和虚拟dom
- react-dom 用于展示
- 创建虚拟dom元素
- 调用render函数进行渲染
- 运行cnpm i react react-dom -S安装包