00:00
那当然我们现在啊,现在我们仅仅是用上了一个,用上了一个re,我们自己的re。但并没有去写什么react。用的是是他提供我们的啊,下一步我们就要去进行改造啊,去自己去写。啊,先搞清楚这个事情啊。来,我们先写一个搭一个基本的结构啊,什么意思,大家看到我我在这里面先去创建一下我那个库的文件夹叫什么名字呢。那在里面给他建一个啊GS文件就叫什么呢?Index就行。能看到这相当于这就是我们的啊,React react杠模块。
01:01
对吧,我们说我们要实现它里面的哪些东西。有两个东西要实现,一个是provide,最先我们上来就用provide,对吧,再一个是什么。对吧,先把这个结构先搞出来,那写他D,他到容易。首先得知道它是一个什么东西。它是一个组件类,对,很好啊,OK,那此时那我们要定义provider组件类,对吧?啊provider组件内,那就来个什么class呗,是吧,Provider啊provider好继承于谁component,那我就需要有一个component了,对吧?那我的意思吗?是不是引入。啊,得引入去啊,来引入一下import啊,React,既然用到了定义主件,那肯定它再来一个大括号,Component from react。
02:15
这一个结构吧,好,既然写组件内render是必然要写的啊,现在我不知要想先写上再说是吧?啊,结构先摆好,下面我们还要定义这一个connect函数吧,啊,Connect函数来啊connect函数写一下export。什么方形是吧?叫什么名字connect,好,这里面有个事情啊,有几个是,首先我们定义函数,有几个是名字确定了是吧?下面就是行参,我们接收几个参数,两个参数。
03:02
啊,这个一定要清楚,我们用的时候是怎么去用它的,哎,我们把这个用法的这个代码给他写一写。我们用的时候是这么用的,看那的括号括号啊,基于这个结构,我们后面还把它暴露了,这么写吧,对吧,而且传参数的时候啊,一个是传了一个啊这样一个函数大概我表意一下啊,接着返回一个对象是吧,排一个传的是个什么对象。OK,好,那这两个形参命什么名字呢?这个有讲究啊。我现在不知道,那我就要去看一下那个文档上面他们用的什么名字什么意思啊,你也可以看一下嘛,啊大家一样看,我找到react就在里面吧。
04:02
里面有啊,看它这不是吗?这有它的API,打开它看一下,它往下翻一点,就是它的这一个什么。是不是它这个connect描述有一个参数叫map state to pro,这是我们的第一个。不懂,等会我再解释啊,这都什么意思,Map to pro。我们说过了这两个参数最终是啊,需要往这一个组件假设我叫叉叉叉组件。是往它里面传属性的啊,这两个啊,为什么它叫map state to prop,看名字啊,Map什么意思啊,Map是映射的意思,它这里不是地图,是映射。
05:01
什么叫映射啊,从一个K到一个什么value去,那也就是说它将什么映射成pro,对,将我state中的数据是应生成pros传递给这个叉叉叉。试一试吧,啊,OK。下面一个呢。也是一样啊,看到最终的目的是不是也是要给我的叉叉传属性,但传的是什么呢?函数,函数里面会用到什么语法呢?哎,会用到一个语法就是dispatch,还记得谁有dispatch方法。Store。大家想想看啊,我去调用其中的某一个函数的时候,是不是就分发action了的,内部肯定会用到是多的什么呢?Dispatch的,所以它才取了这样一个名字,简单来说这个是映射啊,状态属性,一般属性的对吧?这个映射什么函数属性的?首先类型是什么函数对吧?用来确定什么呢?用来确定啊一般属性是不是答案都传递给他的是吧?好,下面这一个一定要先确定类,知道类型,它什么对象啊OK,用来确定什么呢?函数属性。
06:35
而且部啊说一下内部会啊会使用会使用啊P方法懂不懂,所以他才叫了这个名字。这都是我们后面写东西的一个依据啊,这都是依据。
07:03
好,参数定义了以后,下面函数里面还有一个非常重要的东西,返回值。这一个返回的是个什么?看那的本身返回什么啊,返回什么是不是得看我怎么用的呀,对不对,我是调完它了以后是不是又加括号啊,那说明它return的是一个什么函数,哎,这样的呗。大家习惯这种建立函数的写法,因为现在匿名函数不用指定名字对吧?好,而且这个函数接收什么东西呢?不接受他嘛。Okay。对吗?你看嘛,这不我返回的函数吗?函数,我之所以知道函数是因为我这么用的吗?是不是?那我传的什么?这是什么东西主件,这是被我包装的主件吧?来看我取个名字啊,取个名字叫就是包装的意思,Component包裹的组件。
08:20
啊OK,返回一个函数对吧,而且接收什么参数对吧?函数接收组件啊嗯,接收包裹啊,就是组件参数吧,接收一个组件啊,接收组件内接收一个组件就行了,是我包裹的那个主件是吧?能不能看到啊,这款关键得一步一步来啊。好,再说这一个函数执行完以后,返回的是一个什么。这个嵌套很深啊,这一个函数执行不就是它执行吗。返回的是什么一个新的组件对不?所以我看到啊,这个很关键的class啊,我写个名字啊,叫connect component。
09:19
嗯。啊,继承于谁,我要定一个,我这个时候是不是要返回一个包装,返回一个U相对容器主义了,返回一个什么容器组件,这就是我说的啊,最终我们暴露的那个容器组件。那么呢啊,因为它起到了是个连接作用,所以我取了这样一个名字啊,其实你取任何名字都可以,没关系,继承以谁。我组建嘛,你说我继承谁component吧。哎,这个有点小倍镜啊。
10:01
就是这个它实际上是啊,大家看到啊,这个函数的嵌套比较深,而且它不但在返回。这个函数的参数是怎么确定的,再一个我的这个返回值到底是怎么样,是怎么确定的,就靠刚才的这个分析,先把结构确定好,再写里面的实现,才有可能去做啊。
我来说两句