React 第一个小游戏(井字棋)知识关键点

1、React是一个声明式,高效且灵活的用于构建用户界面的JavaScript库

通过使用组件来告诉React我们希望在屏幕上看到什么。当数据发生变化时,React会高效的更新并重新渲染我们的组件

2、 render返回了一个React元素,这是一种对渲染内容的轻量级描述。大多数的React开发者使用了一种名为"JSX"的特殊语法,

语法<div/>会被编译成React.creatElement('div');

3、 在JavaScript class中,每次你定义其子类的构造函数时,都需要调用super方法。因此,

所有含有构造函数的React组件中,构造函数必须以super(props)开头;

4、当你遇到需要同时获取多个子组件数据,或者两个组件之间需要相互通讯的情况时,需要把子组件的state数据

提升至其共同的父组件当中保存。之后父组件可以通过props将状态数据传递到子组件当中。这样应用当中所有组件

的桩体数据就可以更方便的同步共享了。

5、为了提高可读性,我们把返回的React元素拆分成了多行,同时在最外层加了小括号,这样JavaScript解析时候就不会

在return的后面自动插入一个分号从而破坏代码结构了;

6、因为DOM元素<button>是一个内置组件,因此其onClick属性在React中有特殊含义。而对于用户自定义的组件来说,命名就可以

由用户自己定义了。我们给Square的onClick和Board的handleClick赋予任意的名称,代码依旧有效。在React中,有一个命名规范,

通常会将代表时间的监听命名为on[Event],将处理事件的监听方法命名为handle[Event];

为什么不可变性在React中非常重要?

1、简化复杂的功能(a、可以实现“时间旅行”功能    b、撤销  c、恢复)

2、跟踪数据的改变

3、确定在React中何时重新渲染

函数组件:

如果你想要写的组件只包含一个render方法,并且不包含state,那么使用函数组件;

这个函数接受props作为参数,然后返回需要渲染的元素;

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

03. react 初次见面

    与浏览器的DOM元素不同,React当中的元素事实上是普通的对象,ReactDOM可以确保浏览器DOM的数据内容与React元素保持一致。1、将元素渲染到DOM中    首先我们在一个HTML页面中添加一个id"root" 的<div:<divid"root"

React的Element的创建和render

React的Element是React应用程序的最小构建块,它是用来描述我们在屏幕上看到的浏览器页面上的内容。在React中构建Element 有两种方式:1、JSX的方式,JSX不是React的必用技术,但它可以用来产生一个React“element”.constelement(<h1className"

React 入门及学习笔记

React构建用户界面的JavaScript库,主要用于构建UI界面。Instagram,2013年开源。特点:1.声明式的设计2.高效,采用虚拟DOM来实现DOM的渲染,最大限度的减少DOM的操作。3.灵活,跟其他库灵活搭配使用。4.JSX,俗称JS里面写HTML,JavaScript语法的扩展。5.组件化,模

React 第一个小游戏(井字棋)知识关键点 - HelloWorld