初始react和使用——事件处理、样式处理和组件

一、react官网

1、官网下载

官网分别有中英文两种:

中文官网:React 官方中文文档 – 用于构建用户界面的 JavaScript 库

英文官网:https://reactjs.org/

初始react和使用——事件处理、样式处理和组件_第1张图片

 2、react简介

react是用于构建用户界面的JavaScript库,起源于Facebook的内部项目

由于react的设计思想十分独特,属于革命性创新,性能出众,代码逻辑却非常简单。所以,越来越多的人开始关注和使用它,认为它可能是将来web开发的主流工具。

react的好处:

  • 声明式设计: React使创建交互式UI变得轻而易举。为你应用的每一个状态
    设计简洁的视图,当数据变动时React能高效更新并渲染合适的组件
  • 组件化:构建管理自身状态的封装组件,然后对其组合以构成夏杂的UI。
  • 高效:React通过对DOM的模拟,最大限度地减少与DOM的交互。
  • 灵活:无论你现在使用什么技术栈,在无需重写现有代码的前提下,通过引React来开发新功能。

注:在学习react之间我们所需要掌握的js知识有:es6语法、this发的指向、面向对象【原型、原型链、class类、继承】、模块化、柯里化函数等一些基础的js

3、需使用的JavaScript库

初始react和使用——事件处理、样式处理和组件_第2张图片

使用方法:

第一种:使用npm安装库

方法二:直接进行引入链接即可

初始react和使用——事件处理、样式处理和组件_第3张图片

需要值得注意的是建议是用18版本以前的版本,因为18以后的版本语法有一定变化。 

二、使用react

1、创建对象

创建虚拟DOM对象,并进行渲染。

初始react和使用——事件处理、样式处理和组件_第4张图片




    
    
    
    Document


    
    

(1)jsx语法:全称JavaScript XML。是一种JavaScript的语法扩展,运用于react架构中,其格式比较像是模板语言,但事实上完全是在JavaScript内部实现的  。元素是其构成react应用的最小单位,jsx就是用来声明react当中的元素,react使用jsx来描述用户界面。

(2)插值符号:{}

插值符号内可以写的内容:

1、表达式

2、数组

3、字符串

4、即时函数

5、布尔值

6、三目表达式

(3)js语句和js表达式

表达式:一个表达式会产生一个值,可以放在任何一个需要值的地方

初始react和使用——事件处理、样式处理和组件_第5张图片

js语句:

初始react和使用——事件处理、样式处理和组件_第6张图片

初始react和使用——事件处理、样式处理和组件_第7张图片

初始react和使用——事件处理、样式处理和组件_第8张图片

 2、样式处理

这里我不知道该如何组织我的语言咯,我就简单的说一下哈,剩下的自己理解哈哈哈~~~原谅我这小学语言水平组织能力

第一种方式:

样式放在head标签中写,和html+css写样式一样的,但不同在于引用样式的时候采用className属性进行引用。

第二种方式:

样式是在script中写以对象的形式,在引用时直接使用style={对象名}

另外一种我觉得差别不大,就和json一样,调用时采用对象.属性名

直接上代码哈哈:




    
    
    
    2-样式处理
    


    

3、事件处理

react元素的事件处理和DOM元素类似,知识在语法上有所不同:

  • react事件绑定属性的命名采用驼峰式写法,而不是小写
  • 如果采用jsx语法你需要传入一个函数作为事件处理函数,而不是一个字符串(DOM元素的写法)
  

三、组件及三大属性

件的核心属性:state、props、prop-types、refs

state:React把组件看成是一个状态机(State Machines) 通过与用户的交互,实现不同状态,然后渲染ul,让用户界面和数据保持一致。React里,只需更新组件的 state,然后根据新的state重新渲染用户界面(不要操作DOM)

props:通过标签属性从组件外向组件内传递变化的数据,每个组件对象都会有props,组件标签的所有属性都保存在props中


prop-types:对props中的属性值进行类型限制和必要性限制

refs:用来绑定到render()输出的任何组件上。
当组件插入到DOM后,ref属性添加—个组件的引用于到this.refs
初始react和使用——事件处理、样式处理和组件_第9张图片

setState:设定状态

初始react和使用——事件处理、样式处理和组件_第10张图片

在开始上代码之前我们来简单回顾一下在JavaScript中ES5和ES6的面向对象

1、复习ES5/ES6

初始react和使用——事件处理、样式处理和组件_第11张图片初始react和使用——事件处理、样式处理和组件_第12张图片

 还有一个是关于继承的问题(es6):

初始react和使用——事件处理、样式处理和组件_第13张图片

2、组件的使用

关于组件的使用有三种写法:

  • 函数式写法
  • 双标签
  • 单标签

组件的使用原理在于把各个代码块单独进行抽出,最终进行挂载;组件又分为有状态和无状态两种。




    
    
    
    组件


    
    

3、如何改变值

如果直接通过赋值的情况下是无法改变的,也就是说无状态是没办法进行值的修改




    
    
    
    组件-改变值


    

所以需要通过有状态组件来改变值:这里所要使用的属性就是state和setstate两个,因为setstate是用来改变state值的属性。




    
    
    
    组件-改变值


    

简写:

初始react和使用——事件处理、样式处理和组件_第14张图片

 这里的这个代码不用在意,是我整着玩的,跟前面那个简写差不多!!!




    
    
    
    组件-改变值


    

你可能感兴趣的:(react,web前端开发,react.js,javascript,前端)