00:00
这个结构应该问题不大吧,只是说看起来可能有点小费劲啊。但是我们刚才写的那个逻辑比其实要轻松很多,就咱们不写过这个逻辑吗?这个。这是跟大家有一个逻辑性啊,这个里面是没有什么逻辑的,就是大家对语法熟不熟。好,下面就要说一个事儿。我们要给他传属性,最终需要一个非常重要的对象。十栋。对吧,我们要通过store干嘛呢,获取状态。听懂了不去读它里面的状态数据,我才能传递一半属性吧。我还有一个事情,是不是要去传递函数属性,而函数属性的函数会必然要调用一个代码。Patch去分发action,最终去更新状态显示。其实当然自然还要用第三个语法,Sub。
01:02
因为你要知道我们store里面的状态发生改变的时候,主键默认是不会重新下来了。我们需要去绑定监听,在监听回调里面是什么,重新渲染组件,组件才会更新,听懂了不?那这个时候。就要说了。我怎么能让这个这个是我的最外层的provide组件,它是不是收到了一个速度。最外层,最外层的就是provider。是吧,这个内部是不是有可能有一个或者多个容器组件吗?而这容器组件现在是不需要十度。怎么办?就是我们刚才学的那个context语法。干嘛呀?我的provider做个什么事?将这个多暴露到我们的看容器里面去吧。
02:00
而我的容器组件需要干嘛?声明接收。就OK了,就能看到是多少,看的是多,后面就有一些逻辑处理了。这能不能听懂啊,也就是说一个事情啊,我们现在就有问题,我们要向我的容器组件来说一下。通过什么技术呢?Context向所有的啊容器子组件,这个容器组件都是我provide子组件吧,必然都是,因为我的是写的最外面的。是不是容器啊,只是组件容器组件吧。啊,提供什么尺度。那这个实现起来并不难。我们要去先说有一个声明。史叫什么名字了?嗯,叫的contact的啊,当然啊,这个地方要说一个事情啊,如果啊你不太熟悉了,那你可以去什么是不去看一下,我们前面的这个不用背啊,跟大家说一下,这个是完全大家不用太去背它的,你直接看一下,知道这个语法就行。
03:20
我们这里面副组件有一个声明。大看呢,叫切的什么?那我准备去传递一个什么属性的属性啊,十度,那这个时候是不是引用pro。什么类型,对一下类型跟这很类似是不是。能听到不?啊,当然,你写不写一快都行啊,好,下面下面说一个事情。我还要提供的方法,让子组件来取,是不是怎么办呢?叫这个不是静态方法,叫get什么。来叫切contact,记住它返回的是个context对象。
04:04
就是一个什么对象,对象里面放我要存的数据。谁尺度数据在哪呢?值呢?This pro店。十栋。这个方法是向所啊所有。啊,有声明的子组件。啊,提供什么。是不是看包含要传递数据的contact对象,这是提供contact对象,我把数据放到对象里面听不懂。而我这个这个说明啊声明。嗯,提供啊的context数据,Context的数据啊,名称和什么,是不是指的类型。
05:10
一个是名称叫多的类型是吗?这两个缺,你要哪个不写它都会有提示,不行。好,现在我是不是已经声明暴露了,那后面你要是我的容器组件是不是急需要去取啊,这个是我的容器组件对不对,那它应该怎么做呀?他能说明一下我的是什么类型。啊,声明接收的contact的数据的类型和什么名称和类型。能懂不来写一下这个名,这个叫什么呢?首先这个说明是静态的,叫contact的,诶写错了啊,Contact的type,记住这里面有个什么。
06:10
S,为什么是S啊?因为有可能有多个属性数据,这个跟我们前面的这个是不是类似的。这能听到不?可以吧?OK,好,来。下面。下面我的这一边啊,我的这一边需要做个什么事啊,跟刚才写法实际上一样的吧,多名字叫多,记住了。什么?这能听到吗?啊,那这样的话,比如说我现在啊,我们等会来测验一下,记住了啊proper。
07:00
那不是pro啊,Pro和什么就这样个吧,哪一个soup来一个pro,那我可以在这里面打印输出一下可以吧。这是我的容器组件,可以不?啊,可以容器组件接着去打,呃,是他的construct输出了。接着把这个输出一下谁了context直接给吧。看有没有十度是不是。这个什么呢?这应该可以了吧,可以了啊。好,可以了,现在啊还不行,这里面有一个非常重要的这个东西没写对。是一个什么问题啊,大家想看我们定义了一个组件来啊,我们把我们的代码给改造成我们的库看好了。现在要改造成我们的过啊,找一下他。这个写什么?
08:00
这个写的不对吧,这不是我们的库点斜杠下面的他对不对。这个怎么整?好,那接着我这个地方是不是就往provide面传了一个速度。是吧,其实他内部是不是给他暴露出去了。关键是它是不是有标签有节点的呀。你现在你想想看,渲染它的时候,你吭哧一下,你就直接去渲染一个div,那我告诉你。这个APP不会选,因为你把它忽略掉了。听懂了吧,你把它忽略掉了。我以前跟他说过一个事情,标签体的这些子节点会成为我这个标签的什么属性?有一个特别的属性叫children。能懂不啊,是在我的里面吧,因为是他的属性嘛,属性叫pro里面,那也就是说我去渲染这个pro的时候,应该是不是把APP作为我的孩子进去了。
09:08
说白了就是这样一个事情,看好了这个写的不对,应该写什么呢?说白了去返回渲染,返回渲染啊,我的这一个provider标签的所有直接点。对吧,那我当前是谁。APP嘛,你要不这么写,那APP就空略掉了,那怎么用。我们是这个意思吗?比养模式嘛,我们肯定要是渲染a pap里面是一个容器组件嘛。对不对。就能听懂吧,这一步很关键。好了,那这一个connect。也要换成我们自己的吧。
10:02
是不是来吧画面。一样啊点啊点点斜杠。下面的。来干什么?直接变成我们的了吧。因为你。当然我们还没写好啊,我们还没写好啊,不着急好。刚才有一个我们re那个库好像没改,对了,我们redu那库也要稍微的去改一下啊,哪个库呢,这个地方看一下。我们re的库在我们的这个十多里面,因为后来我们改了,但是这个里面没改嘛,所以得改一下,把这个也一样改成什么我们的。改好了吧。注意啊,还有一个。Reducer。也就是这里面没有用什么。
11:01
抗病对不对?看到了吧,得用上抗病来证明,确实是可以的,再来一遍,相当于把以前我们写的熟悉一下,引入。我们当前。定义的啊,要点点斜杠了,Ne里面的re库里面的哪个函数呢。Combine reduces。对吧,我们再来一个函数。哎,咱前面是不是写过来着。把这个拿过来吧。也就是说,我们最终暴露的不是某一个reduce函数,而是什么?总的。产生的reduce函数是不是通过combine reduce产生的?这里没看到。可以啊,那可以之后那就要说一个事情,我们现在的状态结构是不是这个样子的。
12:01
是吧?那我们的这个里面哪个呢?看好了我们的容器组件里面这个count还是state吗?是吗?我们的这是个对象啊,对象里面有哪个两个属性抗的和谁有者那这哪。干嘛点user,我们现在没用是不是。这个能问到。要能懂了啊好,那有了这些东西后,我们现在去啊,打开看一下啊,看看现在来说是一个什么样子,我们现在有没有报错,哎,看看运气有没有报错,刷新一下。现在是不是报错去了,报错的原因是什么?大家看一下他在说这一个属性被标记,为什么呢?必须的,在这个count UI组件里面,但是你有传吗?
13:02
没有。也就是说,我们的这个count UI组件是不是要接收这么三个属性来着,都是必须的吧?是不是,但是我的容器组件有向它传递属性吗?没有。对不但是我们来看一下这个东西。看下这个东西,大家注意观察一下啊,我们现在实际上这一个我们的容器组件已经得到一个对象了。那个对象里有什么东西?有,有get,有subscribe,这就是哪个对象。那不就是过吗?是吧?这不就是多吗?那也就是说,我们现在的容器逐渐可以看到谁了?吃多了吧。
14:00
那现在已经走完了第一步,还差第二步。也就是说,我们现在已然是做到了什么呢?将失舵。传递给了谁?所有任何的什么容器组件,而容器组件最后的责任是干嘛?根据你传入的参数,以及是多向它这个UI组件传递什么属性。这已经完美的走好了第一步。
我来说两句