React 初始学习----React起源

        最近也是花费了一些时间去学习了一下react,在学习react的过程中,建议大家熟悉记住一句话,就是react走的是单向数据流,其实不光react 包括js,vue全部走的都是单向数据流,只不过vue中有一个双向绑定,但是它的底层原理是通过Object.defineProperty()方法,其实也是单向数据流,而js它是单线程的,虽然并不代表js引擎线程只有一个。js引擎有多个线程,一个主线程,其它的后台配合主线程。

首先在学习react之前 我们要先来对react有一个初步的理解:

  1. 什么是模块化:是从代码的角度来进行分析的;把一些可复用的代码,抽离为单个的模块;便于项目的维护和开发;
  2. 什么是组件化: 是从 UI 界面的角度 来进行分析的;把一些可服用的UI元素,抽离为单独的组件;便于项目的维护和开发;
  3. 组件化的好处:随着项目规模的增大,手里的组件越来越多;很方便就能把现有的组件,拼接为一个完整的页面;
  4. Vue是如何实现组件化的: 通过 .vue 文件,来创建对应的组件;
  • template 结构
  • script 行为
  • style 样式

        5.React如何实现组件化:大家注意,React中有组件化的概念,但是,并没有像vue这样的组件模板文件;React中,一切都是以JS来表现的;因此要学习React,JS要合格;ES6 和 ES7 (async 和 await) 要会用

        HTML、CSS、JS

        html展示网页

        css对网页进行修饰

        js 对网页做一些交互

大型网站和小型网站经常出现的问题

  • 开发问题 页面多不好管理、为了提高开发效率
  • 维护问题
  • 访问效率问题

为了解决以上三种问题,我们后期研发出 单页面应用(SPA) 只返回一个html 其他用js css实现、但是这样只提高了访问效率,并没有提高维护效率

JavaScript 分为三个部分:

  1. ECMAScript (ES5、ES6)(一种语法标准):变量、函数、对象(String,Date,Array)(对字符串,对时间,对数组的处理)
  2. WebAPI(接口)(也可以说是浏览器本身提供的一些方法供我们进行操作):

  •         BOM(Browser Object Model) window、history、location

                           浏览器对象模型(BOM)

                       浏览器对象模型 把整个浏览器看成一个对象 以面向对象的方式进行操作 面相window 、history 、 location 进行操作

  •         Dom (Document Object Model)

                        文档对象模型 整个html文件 叫document 、 element (标签元素)

                        文档对象模型(DOM)

                 DOM(文档对象模型)是 HTML 和 XML 的应用程序接口(API)。DOM 将把整个页面规划成由节点层级构成的文档。HTML或XML页面中的每个组成部分都是某种类型的节点,这些节点又包含着不同类型的数据。

IE 3.0 和 Netscape Navigator 3.0 提供了一种特性 - BOM(浏览器对象模型),可以对浏览器窗口进行访问和操作。使用 BOM,开发者可以移动窗口、改变状态栏中的文本以及执行其他与页面内容不直接相关的操作。

            在ES5版本因为无法解决函数抛出、以及在js文件中写html文件

           虽然ES6以后解决了函数抛出import,但还是没有办法解决在js中写html文件的问题,所以facebook 发明出了react

ECMAScript6(简称es6)

import 抛出文件

        在React中 中只有一个html和js

  •         jsx ,运行在js中的xml(拓展性标记语言)
  •         只要在js文件中引入React模块 ,就可以直接写HTML,即JSX
  •         xml规范,必须要双标签,单标签要加斜杠

但是呢,一会儿是标签 一会儿是括号 这种方式 可读性比较差 ,所以react发明出了以标签的方式引入模块

简称 把类当做一个函数的集合

并且通过继承的方式继承React.Component 把类继承为一个组件

对开发的方式进行了升级

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

剑非出我心

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值