00:01
好。来啊,呃,我们先呃先不去做那个,呃用户管理,我们先把有些东西的前面有些知识深入一下。这里面有,我前面呢,给大家准备好一个test文件夹,里面有一些测试的页面啊,这个是面试中经常问的,所以我们需要去把它先搞清楚,我们再继续写一下啊,首先我们先来看第一个关于set data的使用。关于B的使用呢,大家应该是先可以去看一下文档。那首先我要找到哪个文档。React文档对吧。那我就打开对吧,文档访问特别快,挺好,这个中文文档访问特别。其实他的现在文档呢,已经做的非常不错了,当然以后如果你们公司需要去做的是rap项目,大家需要把这个里面的东西都通通看看产品。
01:02
可能有的重要性不算特别大,但你要有一个了解,有的重要性比较大,大家就需要去好好的看一下,而且这个上面呢,说明其实啊,都说的是非常精确,非常到位的,其实。只是你第一步,你第一遍看的时候,可能有的东西呢,你觉得他说的很含糊。原因不在于他说的不太好,而是在于你当时那个情况理解的不是特别透彻的时候,你都不知道他在说什么,有些特殊的情况,你可能啊理解不到位。而我们当前啊,需要看的啊,不是它的这前面几个了,前面几个相当于是一个使用的一个教程的。啊,这一个右边的这个教程是一个一个例子来作为教程去使用的一个教程啊,这是一些它里面的一些技术点的一个说明的一个啊,一个教程,而下面这个是什么呢?是它的API文档以及一些重点的知识的一个说明。
02:03
我们现在看的是不是他等于百。三的是谁的呀?是哪个API的,是他哪个的。或者说是哪个类哪个对象呢。是不是应该是组件对象的吧,所以B是不是在这个里面。这能听到不好,那我们是不是需要去看一下他的一个方法叫什么,是不是啊。那我们需要去打开它。看着吧啊。那它这里面是不是接收几个参数啊两个,而且第二个参数是什么。回调函数这个中况什么意思,知道吧,可选的。平常我们还一般不写,是不是基本上不写,只有特殊需求才写?而这个阿阿是一个什么东西,大家看到参数一为带形参的什么?
03:03
是不是函数?能听懂不,也就说行成大家看来这个函数不是我们调的,是它自动调用,听懂不?它自动调一个回调函数,而且接收两个参数,一个是一个是什么。这不就是我组件里面能访问的两个两个数据吗?是不是state change?这个return需要是个对象,也就是说这个我是一个。状态改变的对象,说白了是一个什么意思呢?比如说我的状态里有M有N都有R,有M有N2个属性。那我如果就M改了。我的M变成三,那我应该这个相应该是多少呢?MV什么3N要指定码。不用N会丢掉吗?不会,他会对这两个。
04:01
进行一个什么呢合并。产生新的状态,我这个返回的不是新的状态,而是改变状态对象啊,是状态里改变的一个对象。那没有改变的还是以前的,听懂了吧,合并以后的结果是不是M是三?N。啊,这能听懂吗?返回的不是新的状态。啊,这个要注意。好,他合起来,他还说了一下啊,说了一下大家看看这里面就是这个意思啊,这一个选这一个使用例子啊,以及最后啊,他还说了一个相关的一个这样的一个东西,什么东西呢。看好了。嗯,我找到它可以用对象的形式就是。这里面来set的第一个参数,除了接收一个函数外,还可以接收一个什么?对一下类型。啊,就是这里面直接传X的陷阱。
05:03
长期的立项。啊,什么时候用第一种方式,什么时候用第二种方式呢?我们等会来总结一下就好了,啊来。我们来用一下,嗯,为了简单起见呢,我提前写好一点技术代码,非常简单的代码。我们现在呢,有一个A组件。它里面呢,有一个状态。加。初始值为一,能听到不?我这里打听一下,返回来一个div,里面有很多个八项,一去显示了这个状态值。没有任何问题吧?这个不用太说好。我先来啊,说一下我们这个怎么用啊,我现在要去更新状态来,比如说这里面不有个开始一吗?我点击第一个标签按钮,是不是就调这个开始一。我们要更新状态,就是要去调用谁认识电,三电只是传什么参数的问题,是不是?
06:03
也就说最最原始的学法是传一个第一个参数什么类型。函数。这能听到不是一个函数啊,传对象的语法是那个函数,语法是什么呢?简写形式。嗯,来,我来写一写,比如说我要增加一,我应该怎么写呢?看好了。啊,这里面完整的写法是接收两个参数,一个是贝,一个什么pro,但是我现在跟pro有关系吗?没有,所以我就可以把那个pro给了什么省略,直接说一个什么。好了,我要返回的这个对象,必须得这么写吗?记住,千万千万不要把小花给搞掉了,能不能听懂?好,接着我要改变的是哪个属性?Count名字是这个吧,值是多少呢?是在原有的值上,是不是加一,那应该怎么做?10DATE点什么count加减加一。
07:07
等等。啊,那这样是可以的啊好。来我们说一下,如果我们用对象的模式写应该怎么写?第二种方式,我们用对象的模式写一下,也做类似的事情,也是在原有计算加一,那我们以前基本上就是对称模写了,对不对啊,我们是会减Z点是对我们先取出那个数据,对不就着加一是不是产生新的值啊。是吧,这不是新的那个抗吗?现在我们最后就会做一件事情。做点什么事啊,认识传一个对象里面有个什么。我们以前都这么做了吧?这能听到吗?能听到好来啊,我们来看一下,我们当前的主要是要看一下打印输出,对吧?看打印输出先刷新一下。
08:07
是不是肯定会执行是吧。就初始就会渲染一次嘛,这不说明它渲染了吗?没问题,好,接着我点A。这边啊。是不是掉了一下,重新调了一下,Re,选出了R了嘛,对不对,好,接着我点它。是不是也可以都可以吧,都可以好啦。这个地方说啊,大家看着啊,我们这两种方式都是可以的,好,我等会再来比较它们俩之间的什么时候应该用哪种啊,我再来说一下它这个语法里面还有一个语法,就是第二个参数还有什么。回调函数。这是在说一个什么事呢啊,说我更新状态之后,我马上想去取状态,能取到挣钱的状态吗?说白了就是这样一个事情,我如果就在下面去取。
09:06
这是不是之后吗?是吧,那我就去取一下this.state.count。我能得到最新的值码,我们前面说过这个问题了,对不对,来啊,开始啊。那现在是都得不到啊,正确的指导我们来看最新的指导轴理,你看得到是几一,实际上我已经更新,为什么啊。这能听懂吧?啊,同理,他现在得到实际让我已经变成什么三了。那我想得到根形后的值,我该怎么做呢?那这个时候是不是就要用他的啊第二个参数了。那在第二个函数是一个什么意思,你用对象语法还是函数语法没关系,懂不懂。
10:03
这个没有没有关系,听懂吧。啊,跟我去取最新的结果是没有任何关系的,如果是我们当前这种情况,比较合适的是用这个语法。啊。好,等会我们再来说为什么是这种语法啊,接着传第二个参数吧,二参数是不是回掉函数?而这个回调函数我接着来。在这里面写一下啊,这是3STATE的货卖。这个能听懂啊里面啊去调用的。我们来看一下,看看能不能取到。最新的数据来。现在当前是一是不是,我是不是要把它升级为I啊。是吧,而且这一个方法是在render之前,Render之后啊,Render之后这个你说一说这一个回调函数啊,这个回调函数是在什么时候执行呢?在状态更新且。
11:15
见面更新之后。啊,回家。这个注意这样一个事情,那我们取得了肯定最新的状态是吧,好这是这一个,那下面要说我们啊,第一个参数是用对应项的模式写,还是用函数的模式写。嗯,怎么样去选择的问题是吧,怎么样选择问题来说一下,如果你新的状态不依赖于原来的状态,那你就用对象模写。如果你新的状态依赖于原来状态,那你最好是用函数的模式写。也并不是说用定向模式就肯定有问题。啊,什么意思?大家看一下什么叫依赖,什么叫不依赖。
12:00
你说我们的这个做法是依赖还是不依赖?我最新的状态值依不依赖前面前面的状态值依赖,因为我是在原有的状态值上面是不是加一啊,什么叫不依赖了。啊,什么叫不依赖,看好了啊,看好了我不是这样做。啊,不这么做,我怎么做呢?我是这么做的,我是直接让他来看的值为某一个具体值,比如说V3。你觉得依赖不依不依赖,那是不是就用对象的语法比较方便?你因为你用对称,你用函数语法也行,但是你这写的没有意思,知道吧,没有,它之所以会设计对称语法,就是在某种情况下面,我最新的状态值跟以前的值是没有任何关系的,我这时候就可以简化。听到吧,传对象肯定比传函数是要方便一些。
13:01
这能听到不?哎,这种情况就比较适合于啊,用对象的模式去写。这是这个。嗯。那如果我们需要在三四页之后获取最新的状态数据,我们可以在第二个com back函数里面去读,是吧?刚才咱说过了是不是?这个它的语法应该没问题了吧,啊,就这种语法啊,语法就这语法,但它还有一些别的东西。
我来说两句