粉丝3.9万获赞68.8万

好嘞,这节课呢,我们再来学习一个新的东西啊,它叫 pina, 那首先确定一点, pina 呢也是 view 中的状态管理,那么上节课呢,咱们正好学了 view x, 而且呢,我们在 view 二的时候呢,都是用 view x 来做状态管理的, 现在又有一个 pina, 他也是做状态管理的,那到底我要用哪一个状态管理呢啊,这个呢,是根据你的业务, 你的场景,你公司所处的环境进行选择的。那我们先不说这些东西,我们先来说一下 v o x 和 pina 具体的区别, 当你了解了 vox, 当你在了解了 pina, 然后再知道他们区别的情况下,根据你的自身情况和你公司的环境情况进行选择,到底使用哪一种这样的状态管理的一些工具。好吧,那下面呢,我就废话不多说了,来看一下 vox 和 pina 具体一些区别啊,那这样呢, 写了一个文章,大体的给大家总结了一下。好,我们来看一看啊,那首先呢,这有一个参考的一个网址,那在这个网址中呢,官方已经说的非常非常详细了啊,就在这,我把这网址呢也列出来了,大家呢下去可以点下去看一下啊,我把这个参考网址也放到我们笔记中吧, 这是 view x 和 p 两的区别。 好,这是一个参考的网址,那下面呢,我给大家大致的整理了一下他们的一些区别啊。首先呢,这个 pina 呢,它也支持选项是 a p i 和组合式 a p i 的写法啊,这个呢和 v x 一样, v x 也是支持的对吧?好,然后其次呢,就是 pin 呢,它是没有没有贴身子的 好,注意,我们的 view x 呢,是有 mutation 和 action, 它里边可以写方法对吧?并且 action 是提交 mutation 的。好注意,在 pina 中呢,是没有 mutation。 真的啊,只有 skate, gets 和 actions。 好,只有这么三个东西。然后拼价呢,他也不需要通过 models 来分模块。我们之前呢,使用 v u x 是不是要通过 models 来分什么 store 模块呀?呃,就是分这个 user 模块呀,或者说购物车模块等等这样一系列模块啊,在拼价中呢,是不需要去进行模块的划分的 好,然后呢, pina 呢,也有 typescript 很好的一些支持啊,然后呢,它会自动化的这个代码拆分。然 pina 呢,它的一个体积更小,也说它的一个性能会更好。好,下面呢,我们把这个大致的一些内容呢给它放到这啊, 呃,那我就给大家列举这么几个比较重要东西吧,它是没有 mutation 的啊,然后是不需要分模块的啊,然后其次呢,就是它的体积更小啊,我把这三个内容呢给大家罗列到这啊, 这是三好,我把这两项就删了啊,那大家呢,主要知道这三点就可以。 ok, 那这是他们具体的一些区别。 好,那我们知道他区别完事以后呢,下边,哎,我们来说一下他到底该怎么去用啊?其实呢,如果说你会这个 vivo x 啊,那这个 pina 呢,你的学习成本并不高。然后呢,这我还要强调一点啊, 不是说所有项目都要用到 pina 啊,不是所有项目都要用到 view x 也说 pina 呢,根据你的情况去进行选择去用, 千万不要把这东西学完以后捆绑好吧说,哎,我这项目必须要用拼讲,你要了解他们的区,这个区别就是优点跟缺点,然后进行选择。还有刚才我说到了跟你的业务来,是吧?这个东西太卷了啊,就是又出个 vox, 刚弄明白了,又出了个拼讲,知道吧,然后又学拼讲, 而且很多大厂呢,其实有些东西他不 care, 就是说这东西呢,在我的开发阶段呢,能给我提升很多,但生产阶段能不能提升很多,这个就不确定了。所以说呢,这个就是仁者见仁智者见智啊, 别让这个培训机构或者说一些营销人所影响你的思维啊。好,那我这呢需要给大家声明一点啊。行,那下面呢我们就具体来看一下拼价的一个使用啊。来使用, 那刚说了,它里边呢有 state getters 和 actions, 对吧? state getters, actions。 好,我把这三个呢都给大家去说一说哈。 来,首先呢,这个 pina 呢,我们需要去安装啊,那我先把咱们之前那个项目的内容呢都给他打开,然后把这里边的东西呢稍微删一删啊,这有一个 a 组件,这里边的数据呢,我就全不要了,写的内容我就都不要了,全不要了啊,然后呢,这有一个 b 组件,我给他删了吧。 呃,然后这里边有一个 home 啊, home 中呢,我把这些东西都给他删了,都不要了,引入了一个 a 组件。好嘞,基本上这么个情况,然后这儿有个 store, store 内容呢,我也都不要了, 这个 index ts 先留着。好吧,那然后下面呢,我们就来说 pina 的一个具体的使用啊。好,我这呢也写了一个文档啊,提前写的,咱们来看一下。当然 pina 呢有它的一个官方的一个文档啊,官方的一个这个内容啊,我这呢也给大家放到这,这是官方网址。 好,更多内容呢,大家可以看他的官方网址,然后在这呢有一些基础的使用啊,那我们可以点击到这个地方啊,然后看一下,这呢你需要去安装啊,然后呢进行一系列的配置,然后就可以去用了。当然呢,我这呢做了一个总结,大家就可以直接看我这了啊,我就按照我这去说了, 首先第一步呢我们要去安装它,比如说一二的或者 n t m 都可以哈,那下面呢我就先去安装它来啊,这是我们的第一步安装。 ok, 那第二步呢就在 mate g s 中进行引入, 嗯,我把这个项目启动起来,然后看一下啊,这呢我也都写的比较详细了,算了,我把我这个网址一会给大家复制粘贴过来吧,我就不在这去写这些内容啊。嗯,具体使用。 好,那就大时候大家看这个地方就可以了啊。好了,我们来看一下具体一个使用啊,那在 mergs 中呢,我们需要去引入啊,那我们现在呢跑到这个 mergs, 好,那现在呢 store 就不用了,对不对?那我就把 store 呢给它删掉 啊,这呢有个 store, you store 我也删掉了哈,然后这呢我们先得引 part 引入进来,然后呢我们在 yos 一下啊,他是这种写法,那我们就直接这么去写就好了。好,那我们这呢也就引入过来了。 ok, 那引入过来以后呢,我的这个网页就不应该报错是吧?嗯,刚才呢会出现一些错误啊。 ok, 好了,下面呢我们再继续看。那怎么样去用呢啊?也是一样,在这个 store 目录下不是有一个 index g s 吗?对吧?这里边呢我们会写很多内容。呃,首先呢要按照它的格式 input 啊, define the store 啊,然后 from 啊,这有一个啊,呃, p 呢,是吧?然后呢再往下 啊,这呢有一个 asport const 啊,叫 you store。 然后这个地方呢是一个 id 啊,这个 id 呢必须是唯一的啊,所以说呢,你要写到这儿,然后你看这个地方啊,就会定义 state 呀, getters 呀, actions 呀。 好,那我们就先来看 state 啊, state 呢,这个地方和原来不同,我们的 v o x 呢,哎,这个 state 是一个这样对象,对不对?他这呢是一个箭头函数,然后 return, 哎,这里边写一些内容。好,那这样吧,我这就写一个 n y m 吧,它值为零, 当然你可以写很多,比如内幕呢,为张三啊,都行啊,随便。然后 a 制呢,为一个十八。无所谓啊,我就写两个吧,别写太多了。好吧,那这是我定义的这个数据,好定义的数据,我现在要在 a 点 b 中,怎么去用呢?啊,那这呢,我们要写成 set up 这种形式啊, 好,来看文档,那在这呢要使用的话,你就得 inpult 一下啊,其实和 v o x 呢差不多,你看啊,我们的 v o x 呢是 inpult, 然后这儿有一个什么 use store, 然后这儿是 promo v o x, 对不对?然后这儿是 const store, 等于 然后呢他加一括号,这样去用,你看这个 pinia 是不是一样的,几乎是一样的。好了,到这呢我们就可以 ctrl 点 log 打一下这个 store 啊,看一下这个 pinia 里边那些内容啊。来到这, 好,他这呢是一个 pro c, 然后这里边呢有很多的他的一些 api, 比如说 id, 你看这个 id 呢,就是刚才我们定义的 id 啊,就在这个地方, 在这。好,然后接着我们再看啊,然后这里边呢还有什么瑞赛特是他的 api 啊,这是重置啊,然后这个呢就和那个监听是差不多的。呃,然后呢我们再来看这里边的这些数据啊,那他的数据呢是在这啊,大家看 是吧?内幕以及 am。 好,那现在呢我要呃去用到这个内幕以及 am 该怎么办呢?你可以再让他进行一个呃这样的复值,或者说结构都可以。那我们先可以直接 store 点 am 啊,或者说我们 store 点儿呃,这个内,那这样的话呢,它就会在页面中呢进行展示,大家也看到了啊, 在这是吧,这个零和张三呢已经进来了,不过一般来说我们不会这么做啊,因为这样呢前面都加个 store 也太乏了,是吧?我们可能呢会结构啊,比如这有一个 name, 这有一个 a o m, 等于这个 store 等于这个 store, 然后这儿的话呢就写 n m 以及 name 就可以了。好,我们再来看,首先 啊,这个地方的一个零以及张三,他完全没有问题啊,也可以展示到页面上,但是呢这其实是有问题的啊,就是说你如果说单纯的展示啊,没问题, 但是呢你要这在这个本这呢进行修改,他是不能修改啊。对了,咱们这个笔记中呢,还少了一项啊,少了一项就是, 呃,这个 pina 呢,它可以直接修改 state 数据,就是我们的 vivo x 呢,它是修改一个数据,需要通过 mutations 啊进行提交去修改这儿的这个内幕,或者说 a y m, 对吧?就修改这个 state 数据, 但是我们的批量呢,他是可以直接进行修改的啊,直接进行修改的。好,下面我们来试一试啊,比如说我这有一个修改名称,好,然后这呢有一个,呃,叫称职这个内容吧,好吧,或者就啊算了,就称吧,然后我们这呢来进行一个修改,看一下能不能改啊, 那我们就把这的一个内幕原来是什么张三,我给你改成李四啊,那这样的话呢,他是不能进行修改的,或者修改他也是有问题的啊,咱们来看啊,他不能进行修改。好,那有人就说了,你不是一个 property 吗?你要加 好来刷新。好,那这时候呢,我们再去点一下,你看他就会出现错误,什么意思呢?就是如果你这样去结构的话呢,这个数据呢,他不是一个响应式数据啊,所以说呢,我们要啊结构的时候需要做一个另外操作。好,大家来看, 我们在下边,嗯,给大家找一下,在这个地方啊,要通过它的一个 a p i 叫 store two r e f s。 啊,这个呢其实在它的文档中呢也有说明啊,我们可以去看一下, 在它的下边这儿有个 store two ifs 啊,在这个地方。好,那这个框该怎么去用呢?好,大家来看啊,我们这儿呢需要去引入啊,需要去引入 store two ifs, 然后拼拧好,然后呢这个结构的话 呢,我们需要这么阔起来,就跟那个我们那个 two r e f s 是一样的,就是引 pro, 然后 to r e r e f s, 对吧?然后什么 promo biu 啊,这是一模一样的,就是我要通过这个东西呢进行结构,那这样情况下呢,就可以修改了。好,来,我们试一下,回到我们页面中刷新一下。 好,稍等啊,然后点,你看,这就改了啊,这就改了,大家要注意,在我们的 view x 中,你不可以在组建中直接修改 style 的数据,不可以的哈,我们通过 mutation 进行提交才能进行修改啊,但是在 pniar 中呢,我们可以直接进行修改。 好,这就是不同的一点,对不对啊?这就是不同的一点。呃,然后再往下呢,就是,哎,现在呢,我可以去改这个地方的一些内容,对吧?哎, 改他,那当然有的企业朋友就会说到了,我能不能借方法提交呀?啊?方法先修改呢,也是可以的。那后面我会说 actions。 好吧,那到这呢,我还要给大家说一个需求啊,就是说我们可能会改两个值,比如我们这呢会改一个内幕啊,他为呃这个 a m 吧 点 value 啊,然后它为一个零,现在呢,我要改成一个十,是吧?刷新, 好,稍微等一下点,哎,这俩就都改,对不对啊?这俩就都改好,那我们在做一些业务上呢,可能,呃,比如说这用户登录了,我们会要把他的状态为处,要修改他的 user in four, 或者说会批量的进行修改这样的一些数据等等这样一些内容。那除了这种批量修改方式呢,其实还有批量修改方式啊,就是刚才我们看到 一个 a p i, 它 a p i 里边呢,是有一个这样的方法的,在这有一个批量更新的一个操作,我们可以把这个呢给它干掉啊。 好,大家看,我们用到了 store 啊,这个东西有一个 patch 看到了吧,然后这儿呢就可以批量修改,什么意思呢?呃,就好比说我现在呢要改你这个地方的一个内幕和 n m 了,那我就可以这么去写啊。看到啊,这儿呢就是 n m 哎, 我加加呗。好,然后这样内幕呢我就改成一个赵四是吧,或者炸雷随便。好,这样呢也可以实现一个批量的一个更新啊,修改好了我们回到这个项目里边啊,刷新一下 啊。点,你看这也就改啊,点点点点点是吧。这个一直在进行修改一直在进行修改啊。所以说呢,你批量更新的话呢,你可以 用他的 api 也可以说直接这么去写,这个就随便大家了啊,这叫两种形式哈。两种形式。好了,到这呢我们就先总结一下这个 state 吧,和 view x 不同点是什么 啊?除了写法以外啊,它的写法这儿是个箭头函数对吧? v x 呢是一个对象。除了写法以外我们的 pina 是不是可以直接修改 s date 的数据啊, 对吧?但是我们的 vivo x 呢是不可以直接修改 state 的数据的啊,需要通过每个 titchen 提交才可以哈,这是一个不同点。好,我们了解了这个 state 啊,这个 state 无非就是定义我的数据嘛,对吧?好,然后再往下呢,我们要说的是这个 gettas 了,来看一下我们的文档 gettas get 四呢,它作为一个计算属性,我们知道 get 四呢它有缓存对吧?好,在这呢我们就来写一下这 get 四啊。这个呢就和 view x 是几乎一模一样啊,比如说我叫他称之 a o m 吧,好吧,称之 a o m 或者我叫呃呃,就是称之 a o m 吧, 来我看看这个地方啊,这是称 name 啊,没问题,称至 a o m。 好,然后呢我在这 return 一个。呃,我每次 我让他直接改一个值吧,就是说这有一个 nm, 对吧?然后我直接的给他加一个一千啊,随便。 好,然后在这呢我再给它 console 点 log 打一个 gets, 我为了证明它是有缓存的哈,它是有缓存的。 好了,现在呢要用这 gets, 因为它是一个计算属性啊,所以说呢,我们这儿也得给它结构一下啊,也得给它结构一下,然后呢把这个趁着 a m 就这 gets 给它放过来。那是不是它展示结果是一个一千啊?来看一下, 稍息。好,咱们稍微等一下啊。好,这有一个一千,这有个一千,这有一千。那在我的控制台里边呢,只会打一个 get 四,因为这个东西呢它是有缓存的机制的啊,所以说 get 四呢,几乎没啥可介绍的啊,和我们的 vivo x 呢 啊,几乎一样。好,然后下面呢我们再来说一下这个地方的一个 actions 啊, actions, 我觉得 up l m 版 actions 呢是写方法的,他同时支持同步以及异步。好吧,那在这呢我们可以做一个这样事,比如说我要给他进行一个加值,行吧,那就加等于一个百六吧,然后我这呢传一个值, 这个呢几乎也是和我们之前一模一样的啊,只是说参数的形式可不同啊啊,但是呢这个也比较好理解,或者说也比较好用, 因为我们了解了 vivox 里边的什么没有天线 action。 那这个东西方便啊,就是传那个值嘛,对吧,这个传是什么?然后他又会加等多少嘛? ok, 好,到这呢,我们就来一个 button, 我说,呃,这是加等操作吧。好,我们这样呢,来一个 click, 就叫 b t n 吧,好,往下走, const b t n 等于 好。然后呢,我们在这呢,需要用到什么呢?用到刚才那个方法,那个方法呢,就叫 up n m 啊,好,传什么值呢?我传一个二百吧,随便举个例子啊,传个二百, 好,当我点击的时候呢,就会执行这个 up a m 啊,来,我们看一眼,刷新。好,大家一定要注意,我们的 其实值他是为零,当我点一下,那他就加等是吧,每次加等二百,哎,他会不断的更新,不断的更新啊,当然你传的值是多少,他就会进行 y 六啊,这 y 六呢,就是那二百不断加等 啊。所以说呢,我们这样总结一下,就是这个 gettas 呢,没什么变化,几乎是吧, actions 呢,也没有什么太多的变化,无非就是传值嘛,啊,参数不同而已啊,和 view x 进行对比的话是吧。然后呢,这个拼压里边呢,它是没有没有切线的啊,只有一个 action action 呢,同时支持 e 步以及同步的操作 好,然后呢, state 是有变化的,就是说我们要在组建中修改 stat 数据,可以直接改,不用通过 mutation 啊,这样提交方式进行修改。好,这就是 pina 和 v o x 具体的一些小小区别。好,那么希望大家呢,对于 pina 呢有一个简单认识和了解, 大家下去呢也去玩一玩啊。当然啊,我们还没有介绍东西有哪些呢,就是 api 里边呢,怎么样去分模块啊,是吧啊,怎么样去做持续化存储呀啊,它里边 api 具有哪些呢?啊,那这样呢,我先给大家去说一下 api 这个事情吧, api 里边东西呢?呃,挺多的, 也还好吧,不是特别多啊,我们可以看一下。好,到这我们就打开这个控台来看一眼啊, 在这呢,其实刚才我们接触过一个这个玩意,他不是批量更新的吗?这有个 reset 是重置的,就是说我只要调用这 reset, 那你就是加等到这个六八百了,对吧?一点重置 就用这个方法,那他就回到稀释位置啊,就回到零了,我们可以测试一下啊。呃,在这呢,我就给他来叫 reset 吧, reset。 好,咱们就使用一下这个方法,不过这些 api 呢,使用的场景不是特别的多啊,我就给大家一带而过了。 reset 好,来我们试一下,你看啊,我不但加加加,加到一个两千四,对吧?咔回去了, 这是重置的,然后呢这个东西呢大概意思呢是做一个你你可以理解成就是个监听处理的啊,监听处理的像其他其他的一些 api 呢,使用的情况来说呢,并不是特别特别多了啊,那这样呢,我就 不做不做这个过多介绍了。大家呢可以去看到 a p a 这块啊,去看 a p a 这块,那我们正常的使用话来说呢,就是它的一个啊,正常的使用对吧?怎么安装,然后这 st 怎么用?然后 action 怎么用啊?改点词怎么用啊?就玩这些东西。好,那么下一课呢, 我们再来说怎么去分模块吧。好,这节课有关于我们这儿所说的 pina, 一个简单的认识和 vs 区别和基础使用,我们就先说到这里。

有人问我应该学习 wilks 还是学习 pine, 你打开 wilks 的 guitar, 然后往下拖到这一段话,可能大家的英文不太好啊,我给大家翻译一下。这段话的意思就是后盾人每天晚上八点直播, 将军大叔在直播间里边与大家一起来聊技术啊,当然你也可以把它翻译成中文。抱歉啊,我翻译错了。这句话的意思就是说 vivo 官方状态已更改为 pine, 你可以简单的将 pine 视为不同名称的 vivox 五。而且大家看在 vivo 的官方文档,在生态系统这一块,核心库也已经换成了 pine, 然后像 td 站他的状态也换成了皮尼尔,然后 uni app 他的状态也换成了皮尼尔。所以新项目就不要用威武克斯了。

pina 和 vox 都是 view jays 的状态管理工具,但他们在设计和使用上有一些主要的区别。状态管理 vox 采用全局单立模式,通过一个 store 对象来管理所有的状态组建,通过 store 对象来获取和修改状态。 而 pina 则采用了分离模式,即每个组建都拥有自己的 store 实力,通过在组建中创建 store 实力来管理状态。数据修改, pina 没有 mutation, 它只有 state, getters, action 同步异步用来修改 state 数据,这与 ruex 不同, rue exile state, gets, mutations 同步 actions 一步模块化。 pina 没有 modules 配置,每一个独立的仓库都是 defeat store 生成出来。 爱的佩尼尔通过设计提供扁平结构,就是说每个 store 都是互相独立的,谁也不属于谁,也就是扁平化了。更好的代码分割,且没有命名空间。语法和使用佩尼尔语法上比 vx 更容易理解和使用灵活。 type script 支持 pina 提供了更好的 type script 支持。 view 版本支持 v x, 当前最新版是四 x, v x 四用于 view 三, v x 三用于 view 二。而 pina 当前最新版是二 x, 既支持 view 二,也支持 view 三。 体积,佩尼亚的体积约一 kb, 相对较小,这些都是佩尼亚和 vx 的主要区别,具体选择哪一个取决于你的项目需求和个人喜好。

好的,我们来看一下 v x 的面试题片哈,那这节课呢,我会把三点一的题号 v x 有哪些属性呢给大家讲一下,然后呢其次呢,就是它里边的这些属性呢,我会都带领大家呢过一遍哈, 然后紧接着会讲一下三点二这个题号,就是说 v x 呢,使用这个 state 值怎么去用?包括三点三啊,该热词值得修改情况,然后在这呢,我会临时再给大家加一道面试题哈,行,下面呢我们就来看一下 v x 这块的一个内容啊。 那首先呢,呃 vivox 呢,它是呃基于 vivo 点 gs 的一个酷或者一个插件,反正不管怎么样啊,就是 vivox 呢,是呃, vivo 点 gs 所提供一个东西,它是要依赖于 vivo 点 gs 的, 然后它最主要的一个功效呢,就是提供了全局的这样的一个属性啊,就是一个状态,所以说呢叫状态管理。那么这个状态 值呢,我们需要在 state 里边去写啊,然后呢,这 case 呢,是属于一个类似于我们组建的那个计算属性,然后这个 mutation 呢是放入方法,当然 action 呢是提交 mutation models 呢,是分模块的。好,下面呢我们就呃先给大家去介绍一下它最基本的一个使用,那这呢分为这么几个属性, state, 那 state 呢,它就是类似于全局属性好,并且呢是全局共享属性。比如说我在 vivo x 里边定一个 str 值,它的这个内容呢为一二三, 那这个值呢,就 x t r 这个值为一二三,我可以在任何组建中去使用,所以说他跨越了组建之间的依赖关系。就说我们之前讲过什么组建之间的通信啊,就是父传子呀,子使用父的数据呀,或者子传父呀,兄弟之间的 全值啊。那这个 vox 呢?不适应那个情况啊,就是哪一个组件,不管是 a, b, c 哪一个组件,想要用到它里边数据直接调用就可以了啊。所以说呢,到这我们就先可以写一下第一个属性啊,就是 state, 所以呢就是来定义全局共享属性的啊,全共享属性,所谓共享呢,你可以理解成我有两个组件,这两个组件呢都用到了某一个值,那我改时候呢,他会同时修改好,下面呢给大家演示一遍哈。 呃,首先呢我先把这内容呢大致的清一下啊,然后呢我这引入了一个组件,大家可以看到 hello word 是吧?啊,那就是这个 home 呢,属于一个副组件。 hello word 呢,属于一个子组件,然后把这类里边内容呢先给他清一下啊, 全部清了吧,这是一个啊子组件。好,然后在这呢我给他写一个这是那个 home 组件。 好的,到这呢我们打开一下啊, ok, 没有问题。行,那么现在呢我这个组件呢想要用到 stat 值呢,它有几种写法啊?首先呢通常常用的有两种, 那第一种写法呢?呃,我可以在这个 timelit 部分打印啊,那我们在这个副组元打印就可以了, 它的完整写法是 this dollar for store, 点 state 点 s t r 好, this 呢是,呃,那个对象对吧?这个对象,然后呢这个 dollar for store 呢? 啊,其实呢就是这个整体这个对象啊,然后呢这个 state 呢啊, dollar for store 是这个对象, state 呢就是它 state 里边呢?呃 state 本身是个对象对吧?它里边有 str, 只为一二三嘛,所以说呢,在这呢是可以打印出一二三的。 好,那么我们这可以用啊,那这个地方呢,这个子午键他也是可以用的,大家可以看到,所以说呢,刚才我说他是全局的一个属性啊,全局一个属性,那共享这个事呢啊,我们也可以做一个小小内容, 比如说我在这个副组件,也就说啊,这个 home 组件,我给他呢把这个值进行一个修改 啊,这儿有个 b t n, 然后我们这儿呢有一个方法,然后去执行这个 b t n, 然后 this 的道儿符, store 的 state 的 x, 等于我写一堆叉,我保存一下,然后当我点击一下呢,你看当前这个变了,他也变了啊,所以说他是全局所共享的这么一个属性,可以这么去理解。 当然呢,他的理解呢有点片面,我们这块理解稍微有点片面,就是我们要讨论这个数据员,一会呢再给大家去解释。好吧,那么现在呢,我们就简单先来知道啊,就是第一种调用方式呢,可以通过这样形式来进行调用。好,我们这样呢来写一下啊, 那 vivo x 使用 state 值呢?它分为两种情况,第一种情况是直接这么去用 好,第二种情况呢是使用到了辅助函数啊,辅助函数。好,下面呢我们来看一下使用辅助函数这种形式啊,那么使用辅助函数呢,就要需要在 在这写一个 inpuls, 然后这儿呢有一个 maple state 好,然后这个地方呢有一个 v x 好,然后呢你还需要在这儿呢写一个 comp, 呃, computed, 然后这个地方呢有一个,哎, computed 啊,这地方呢有一个点点 map state, ok, 然后这儿呢,我们可以把 itr 放进去, 那这时候要用的话呢,就在这直接写 s t r 就可以了,是不是这个地方要比上面这个呢使用起来呢,稍微简单一点啊。哎,你看这个值呢,他也都进来了,对吧?是一个一二三啊,没有问题。好,这就是我们这儿所说的两种 写法啊,两种调用 vivo x 的这个值的一个内容。好,那么我们这儿呢也进行一个记录。哎, 这是辅助函数,就是 map state, 那我们这呢也要说一下,这两种,呃,都可以拿到我们的这个值,对吧?都可以拿到 state 值,它们的区别是什么啊? 以上两种方式啊,都可以拿到 state 的值,那么区别是什么? 简单来说呢,它的区别是使用 this 的哒哒哒,对吧?这种方式是可以 直接修改 vivo x 的 state 数据的,那使用这种辅助函数的形式是 不可以修改的。好,我们这呢也可以去试验一下啊, 然后通过这个内容呢,你看啊,刚才我这种方式呢,可以修改的,那么我既然 这写 x, 就证明他是一个 z x, 对吧?只不过呢,我们这这个 z 可以不用写,当然你写上去呢,他也是没有问题的,就和我们这一样,你这类似也可以不用写,他也是没有问题的。 那所以说我这获取或者修改的时候呢,是 this 点到了 for store, 对吧?那么这个 str 辅助函数形式呢,我也是通过 this 点 str 就可以获取到了。 好,那我们来试一下,到这呢,我来点一下按钮,大家可以看一下,一二三呢就拿到了,但是呢,哎,如果通过辅助函数 这种形式,我要把它直,比如改成一串 yyy, 他能改吗?好,我们来试一下,当我点击时候呢,他就会报错了, 那这就是刚才我所说的这种形式呢,是可以修改的,这种形式呢,是不可以修改的,这点呢,大家要尤为注意。好吧,尤为注意,那为什么会造成这样的结果呢?非常简单。首先我问各位一个问题, this 代表谁?当前组建的对象,对吧? s t r 呢?说白了就是当前对象当前组建的对象 负了一个 x t r 的值,而这个值呢,是 y y y 啊,而这个值呢,是一二三,对吧?我们默认就是一二三嘛。然后呢,这个 x t r 就呃, map stage x t r 相当于说是当 当前组建的,而你这儿 this dollar for store the state x 是哪儿的?是来自于这儿,所以它俩这个呃,数据来源是一个啊,但是呢,根本上的一个内容呢,是有些小小的变化的,你看啊,给大家画一个图, 好,这是我们的那个呃, store 仓库啊,这是我们 store 仓库啊,这是我们当前组建, 如果你要用到 map state 啊,要用到 map state, 相当于说 map state 这个辅助函数呀,给这个大对象啊,给我们当前组建一个大对象复制了, 复制了一份 s t r 值为一二三,复制了,但这个复制的来源是不是来自于它呀?那你, 你在这个组件用到的是他吗?是根,是他,对吧?根本是他。但是其实你用的是谁呢?用的是他,用的是这个,用的是复制品, 这个大家能懂吧?就是说赝品,对吧?不是一个真的古董。哎,那我们如果直接写的是多少福? store the state 是不是直接用的它呀?直接用的珍品,对吧?就这个意思, 所以他们之间呢,虽然都可以使用这个值,数据来源就是他啊,但是呢啊,他们根本上是有区别,这哥们是直接用他,这个呢是复制品啊,希望大家能理解这块内容哈, 好,这是我们这所说的这个 state, ok, 嗯,好,那么接下来呢,我们再来看啊,还有这个 没有 x 啊,还有第二个属性就是 getas, 那 getas 呢?我们写到这儿啊,它就类似于组建的这个,呃, computed, 其实呢,就是针对于 stat 数据进行二次计算, 进二次计算,比如说我拿到值是一二三啊,我可能呢给这个一二三呢做一个加点的操作,或者说保留两位小数,或者说最后呢把这个数据呢变成一点二三啊。注,做一些什么数字货币的那些项目里边呢,可能会涉及到这些内容, 反正呢就要进行二次计算,那也别管怎么样进行了,对吧?那么我们这呢,随便先写一个吧,比如说写一个称职 x 条吧,然后我给他啊,这呢写一个 state, 好,然后到这呢,我们就 state 啊,我们可以直接 retear 啊, state 的 h r 好,再加上一个一吧,或者再加一个叉吧, 那结果就是幺二三叉了,对不对?我们可以使用它。好,那么使用 gettas 的数据呢,也有两种形式啊,第一种形式呢,大家看啊, gets the 好,我们可以看一下是不是也拿到了,对吧?幺二三叉哎,没问题,它也有第二种形式啊,就是采用辅助函数的形式, 好,我们写到这复制函数形式,哎, 你看都是可以的。那么这两个呢,几乎没什么区别了啊,几乎没什么区别了。为什么这么说呢?是因为这两个呀,他都是改不了的啊,比如我们在这呢可以获取 this 的倒数 start gators 的啊, change x r, 我们可以获取到的直是一二三叉,对不对?那现在呢,我想做一个调整,比如说呢,把它改掉,改成一串的 y y 啊,保存一下好回到这,然后点的时候汇报错 啊,它不让你啊,这个 set 它只有 get, 所以说呢,一定要注意一下啊,就是有关于我们的这个 get 字啊,来我们这儿写一下。 呃,这个 gets 啊,是不可以修改的。那这个地方呢,通常这个面试题呢,他可能会这么问啊, 好给大家写一下。面试官呢可能会问,这样问,他说,你看啊,我这个组件呢,使用了啊 getats 中的内容啊,那这个组件使用的话呢?组件使用采用 vegan model 的形式 会发生什么?那这个会发生的一个情况我可以给大家去写一下, 如果你单纯的绑定不进行任何的修改情况下,它是没有问题, 记得好,我们刷新一下页面,一二三叉没有问题了,对吧,但是呢,你要打个 m, 他是不能修改。我们知道 v 杠 model 是我们的 date 数据到我们 tom later, 这是 mv, 对吧? vm 呢,是试图到数据,也说试图通过试图把数据修改, 刚才我们已经看到了,他是不能修改的,所以说呢,他会报错啊,当然我们的 state 如果说采用这种写法,他是没有问题的啊,所以说这样呢,大家一定要注意啊,他是不能修改的。好吧,这是我们这儿所介绍的啊,这个 state 啊,这个 getrs 啊, getrs。 好, 呃,接下来呢,我们再来看下面的一个,就是这个 utiches mutation 呢,是存放 同步方法的同步方法的,这个呢,我后面给大家去举例子吧, action 呢,是存,呃,是个存放啊, e 补方法啊,并且啊是来提交那个贴身啊,这个呢后面给大家介绍。 嗯,然后呢我们这个属性里边呢,还有一个东西叫 models 啊,这个 models 呢,其实就是把 v x 啊,再次 进行模块之间的划分啊,再次进行模块之间的划分。好,下面呢我们就针对于这个 models 呢,先给大家说一下,然后呢每个推神 action 呢,我在下节课会大家去讲他们之间的使用以及区别。 ok, 那这一 课呢,我先给大家讲一下这个 models 啊,那回到我们这个题上, v x 呢,这儿提醒各位有五个属性啊, skate gathers, 没有推车 actions, models 哈,那下面我们讲 models 啊, models 呢,它其就是把数据呢更细分,什么意思呢?你看啊,我在 sate 中呢啊,来定义这个数据, 那为什么我要在 state 里边进行数据啊,因为我的项目中呢有一些数据他可能呢是啊,在很多组建中需要使用的, 那我在某一个组建中获取到了这个值,然后并且我在很多组建中去使用的话,我是不是要在当前组建的这这个值传递给某些组建啊, 那这样情况下呢,就太累了啊,或者说太繁琐了,那我能不能把这个值呢存在一个全局的情况, 比如说存到 state 里边,哎,然后呢这个组件使用就可以了呢,哎,没错,所以说呢,我们把这个值呢存到 state 里边,那么这样情况下呢,就是,哎,我存到 state 里边,那只要是我的一个组件,别管哪个组件,想要用它是不是直接用就可以了,对吧?比如 b 组件用直接用就行了, 是它的一个优势,但是呢,这个值啊, state 里边这个值,我们的项目如果大的情况下,它可能会存很多,比如 i t r 一 s t r s t r 三,对吧?可能到 st r 都一百了,存这么多值,那每一个值分别代表什么意思? 那这个这个地方呢,就需要加注视了,很难维护了,对吧?或者说某一个值在哪些组建或者哪个模块功能的组建中去使用, 用了呢,你可能呢维护性也会让你增大,不管怎么样,就是 models 这个东西呢,是让你细分的,让你更好维护的,这就好比说我们家里边一样, 我们家里边呢,哎,可能厨具都放在一块,那我们还会把筷子单独放在一块,对吧?就是汤勺类啊,都单独放在一块,把那种盘子碗放到一块,我们不会把这个筷子和这个碗都堆在一起, 那我们已经细分了,就筷子和碗分离,然后再细分一点,就道理这个意思,所以说呢,我们使用 models, 然后再细分 它的一个功效,会使得让我们的项目呢,它这个数据啊,更细,更好管理,更好维护啊,就这个意思,所以说呢,我们这样呢也可以使用 models 啊,好,那下面 呢,大家来看,我们这呢可以写一个模块啊,比如说我们有一个 user 模块, models 下的 user, 好,我们可以在这呢新建一个这样的 user g s 文件啊,新建一个 models, 一个目录啊,里边儿有个 user 点 g s 文件 啊, state, 我说这儿呢,叫 user talking, 或者直接叫 talking 吧, 随便写一大串啊,行,那么现在呢,我们要去获取到这个数据,该怎么办呢?来,我们先打开一下我们的页面啊,好,我们要获取到这个纸的话呢,他就得这么写了。 store 的 state, 注意 user 下的 tokey, 因为这个 hocking 呢,它属于哪个模块儿啊?属于 user 模块儿,我们需要把它挂载到这儿啊,属于 user 模块儿,所以说呢,你看这一大串儿我就拿到了。好吧,那么如果说他要用辅助函数的形式呢,他就这么写了,大家看啊, 嗯,我拿这个 hello word 组件来举例子吧。这样话呢,大家在后面呢,去看我这个笔记代码时候呢,可能会好一点啊。 maple state, 嗯,这儿有一个 computed 好,它就这么写了。 talking state, state 的 user 的 talking 啊,这样就可以了,然后 这呢放一个 talking, ok, 打开,是不是这一串也过来了呀?哎,没错,那么大家看,是不是我单独维护了一个 user 点 js 这么一个文件啊,然后这里边一看就是根据, 跟什么?呃,这个数据相关啊,跟用户数据相关,比如说用户 toky, 对吧?比如我们一个网站啊,那用户还有哪些东西啊?用户的头像,用户的昵称,用户是否登录了,对吧?呀,等等等等一系列根据用户有关系的。 哎,那我们的课程类呢,我可能会建一个 coser 点 g s, 那么就是 co 这个课程的所有的数据,所以这样的话呢,就会让我们的这个数据呢,全局的数据更好地维护,更好的管理啊,就这个意思。 好。那么有关于我们的 view x 第一个部分的面题就是 view x 有哪些值啊?如何使用 state 值?这该台词如果修改了怎么办啊?针对这些内容呢,就给大家先讲到这里。

u x 用过没有?就是 ux 啊,那个用到过那个迪斯派系啊,就是我们经常问迪斯派系埃克斯是吧? x 型和 mutic 型有什么区别呢? x 是用来提交一些一步的操作, mutant 的话,不同的一些 操作嘛,就比如说一个方式接受一个 steet, 这个是你你需要更新的值,然后在你的 steet 点 gs 里面,比如说有个优赠一号吧,等于你传你传过来的那个值啊。 x 的话可以用来支持一些一步的操作, 比如用 promise 或者 a single way 吧。爱情是非用不可的吗?嗯,不一定。为什么不一定呢?呃完,我的理解就是如果不用一些一步处理的话,一般都是用有推伸的第二步一步处理,比如说巴拿克斯 下单啊,这个就是你的项目里面是会涉及到这个义务的操作的。那我们这种情况下, x 型他是非抵用不可吗? 嗯,对,建议还是都放在 x 里面吧。那为什么要这么建议呢?看一些文档和博客上说, x 就是用来处理一些意 一步的操作,建议都封装在 action 里面。这个建议背后的原因是什么?为什么呢?这个,这个没太详细了解过。可以的,逍遥同学,你是?现在?嗯,前面年到现在为止我觉得达到最好的同学来给你点赞啊。

大家好,今天分享的面试题是 wex 的核心属性和使用方法。 wex 主要作用是状态管理,比如登录状态管理、购物车状态管理等等。 其核心属相总共是有五个,分别是 steak、 guiders、 女推、神色、 accents 以及 models。 其中 step 用来存放数据,也可以称作为数据员。 getters 类似于无忧中的过滤器,可以对史蒂特中的数据进行二次加工,二次处理。没有提神色,他是唯一可以修改史蒂特中的数据,是同步修改 xx, 它是一步修改斯地特中的数据。这里有个注意点, xx 中的方法并不能直接来修改斯地特中的数据,而是要通过考秘特来出发,没有褪色 中的方法,其实最终修改数据的是水,最终修改数据的还是秒退,甚至。而 model 者的作用是来拆分模块,这就是维克斯的核心属性啊。那接下来我们再来讲一下使用方法, 通过代码的形式啊,来演示使用方法。返回 os 库的当前是五优三的项目,注意,这个是五优三的项目,而我们所看到的威克斯实力啊,是五优三自动帮我们生成的啊 啊,他总他给我们提供了四个属性,少了一个 gatsa, 这里我把 gettas 写在添加上 gats stat 来定义数据,来一个 number, 数字一百。 好的,接下来我们就要在组建中来使用史蒂特中的状态了,这里我提前创建好了一个组建叫 wex 点五优组件,在浏览器中看一下,当前这个页面就是 wex 的 页面,来一个 hr 标签。如何带仕途层直接来使用 stat 里面的数据呢?这个比较简单, 来一个,到了 stop 点 stat 点 number 即可, ctrls 保存一下代码,返回浏览器看一下数字,一般就渲染渲染出来了,这是在试图 图层直接来使用史蒂特里面的数据。好的,然后我们再来啊,在 gettas 里面定用一个数据, getts 的作用是?作用是对史蒂特中的数据进行二次修改, 它里面有个有个兰博数据啊,那我们来一个兰博,注意该特色中的兰博,它是一个方法,并且需要传入史蒂腾, 将最终的数据啊蕊退出去, stat 点 number 就可以获取到这个 number 值,然后做什么处理啊?在后面拼接一个字符串, 宝特那边再来返回这个 wex 的,唯有这个组建,再来一个 h 标签。如何使用 getters 里面的属性?同样使用 dorisda 点,这一次就不是死 d 了,这一次叫 getters 点 number, 保存代码一百元就已经出来了,我们当前是在仕途层来使用。那如何在数据层使用呢? 那刚才我说过,我们的项目是五 u 三的项目,而五 u 三必须在 set up 入口函数中来写。大家可以想一下,在五 u 二中我们是如何来获取仓库中的实力,是不是 this 点 dollar store 点 stat 点 number, 这是我们在五 u 二中使用仓库实力的方法,但是在五 u 三中已经取消了这一次啊,所以这种方法已经不能用了。那如何使用呢?这里我们需要先来导入一个方法, 那它 farmer 是 wex, 在 wex 里面有一个方法叫 usa, 通过 usa 的方法就可以来获取到仓库实力,那么我们来先来获取仓库, 来定一个边量,接收一下, 定要用 use 十道方法。好的,那此时的话,我们就可以砍速点 log, 看一下在数据层怎样来拿仓库里面的数据, 死到或许到的就是整个仓库,而里面的 stat 点 number 拿到的就是 stat 中的纸。然后我们还想用 getters 里面的纸 再来一个砍手点 logo, 通过死到点 gets, 点 number f 十二,看一下控制台,那数字一百和自负串一百都已经答应出来了, 再来返回当前 stat 和 getta 的使用方法。我们已经知道了,那 mutation 之中他是干什么用的?他是来修改 stat 里面的值啊,在里面定一个方法, apt number 同样需要将 stat 来传进来。 做一件什么事情叫 stat 点 number 先获取到这一个值,拿到值之后啊,我让他自增。当前就有这样一个方法,如何在组建中来使用这个方法。好的,我们先来一个吧台按钮, 来一个加一,给这个吧台按钮注册。点击事件, 在斜踏步中定义啊,加一的方法, 五 u 三中定义的属性或者方法。如果在试图层使用了,那么一定要使用 return 先返回去,那只有这个样子啊,这个 ad hand 的方法才可以在试图层正常使用。 现在的问题来了,那如何吊用, 有听谁指出呢?这个 add number 方法的,通过 stop 点考秘的方法,直接将方法的名字传进来即可。这个方法叫 add number, 保存代码来演示一下啊,点击加一,大家看到了没有?那这个数字和字物串都在这里跟着变动啊,也可以看一下控制台里面的十道实力再来点,那这个位置也是同样在这里变化的啊。好的,说明没有问题, 这个是同步。最后我们还要再来演示一下 x e 步,那 e 步的话我们也同样胜利。一个方法, 传入烤 tex, 需要模拟一下一步,通过 steamout 进行模拟,模拟一步操作, 那三秒钟之后我来执行 comtax。 点过会我会给大家讲一下 comtax 是什么意思啊?他通过考 met 来触发的。是谁触发 muticen 之中的方法? 好的,当前埃克甚至里面也有一个方法叫 atd number, 在组建中如何出发呢?好的,同样再来新增一个按钮,叫这一个叫 sink, 就是 一步加一,给他绑定一个可立个事件。 先来定义这个方法。 cost 方法倒出去 如何触发呢?同样死到点啊。这一侧有一个方法叫迪斯 patch, 通过这个方法就可以来触发 x 之中里面的定的方法。那这个方法同样是 add number, 第一个按钮没有问题,主要看第二个按钮,看一下三秒之后能不能实现加一。 哎,看来这个是不是有问题啊, 果然是这个名字复制错了。 重新来演示一下,看一下三秒之后能不能实现加一。好的,没有问题。 最后给大家来讲一下这里 康泰克斯指的是谁?这里的康泰克斯其实就是上面的这个死道实力 在方法中怎样来触发 mutation 之中的方法是通过 stop 点考密特,所以在这个位置同样是 stop 点考密特来触发 mutation 之中的方法。那这个 contacts 大家就把它当成 weeks, 实力对下即可,也就是这里的 stop。 好了,今天的面试题啊,我们就分享到这里。

担心面试过的小伙伴很多,被问过,说说你对没有差的理解,今天我们也简单看一看概念,用白话梳理一下,面试的时候也能来上两句自己的理解,而不是只会官方的概念。我们知道两个子组件他是无法直接通信的,一般需要借助副组件作为桥梁,实现两个同级组件的通信。 但是如果需要共享的数据较多,同时代码逻辑、组件嵌套也比较复杂,这么做就不太可惜了,整个过程会十分的混乱。这时候我们就想呀,要是有个公共的地方存数据就好了,一个组件存一个组件,需要用的话就直接从这个公共的地方取,这样是不是整个流程就可以很清晰啊?其实六叉就是做了这么一个事情, 他实现了组建全局状态管理的一种机制,通过创建一个集中的数据存储,达到了组建之间的数据共享的作用。我们也可以理解为落差,就是状态管理工具,或者说是数据管理工具,他将数据存在一个公共的地方,谁要就 直接去那取出去。大家理解了吗?欢迎评论区补充自己的看法哟!由于时间关系,今天我们先消化一下概念又抄的具体内容及写法,后面会持续和大家分享的。关注微塔,每天进步一点点。

你好,能听见我说话吗?呃,可以啊,这是他第一站。嗯嗯,吴老师你好,很荣幸参加这次面试应聘会,公司潜在开发的岗位。然后我叫唐婷,是正如大学计算机科学技术专业二三届一届本科毕业生,在学校我们的专业课有操作系统、计算机网络,计算机组成原理,数据结构等。然后我是在大三的时候自学了前端的相关技术,比较熟悉的是 atmcs, gses 六,了解 es 六的波比赛性格, victory 的呃等一些特性,然后的话比较熟悉的框架是六二,了解六的双向绑定原理的算法,以及由开发和使用道德, vivo x, vivo 六条等等。然后在项目的开发过程中也有也有了解过没有三,以及一个 jerry, 对于百分控制的工具 p 卡, sbn 都是由使用到的,以及一些工具,比如说 boss, man, 然后的话买 circo, pleasegood 在开发中也有使用到。对于扎瓦啊, noojassa, 放假 abc 以及一个瞬间的模式,之前我都有去呃进行了解,然后的话我是有过两段的实际经历,一段是在南京做的是简单开发,然后另一段是在郑州也是做的软件开发的这一个工作。然后项目的话,我自己学的时候作为一个项目,项目是一个 v r 的项目,然后有使用到 v 叉, v 如转以及用的 mgur 已经变成呃等。然后在公司里面的话,在一段时间里面的话有接触到没有三,以及一个之科瑞,在后面的一段时期里面接触比较多的是一个呃,没有二,然后我个人的话有单位班级班班干部,然后获得过优秀学生干部,优秀团员,然后也参加过一些社会时间活动,获得学生社会时间优秀和个人也参加过积极项目,获获得过奖学金,已过英语四级。嗯,好,我介绍完毕。 呃,你在做那个茶几网的时候你有提到一个 token, token 他主要是为了解决。呃,就比如说在用户第一次登录的时候要输入一个用户名和账号,如果不是这个特等的话,是不是用户每次登都要设置就是一个用户名和一个密码,然后特本就是解决这样一个问题的,他就会根据在第一次登录之后后端会根据这个用户名和密码生成一个特等, 可能就是一个口令嘛,然后以及他的过期时间返回给前端。前端的话,呃,拿到这个之后可以把它保存在护理当中,或者保存在保存在下一次防腐的时候就可以把这个特狠携带过去,只要他不过期,后端积极验证之后就不用再每次的这样进行一个输入用户名输密码的一个操作啊。因为是因为自己做项目的时候要合乎的发生请求的话也没有一个接口,只能自己写。 ok, 我想问一下你刚才说你的数据没有做完,我想问一下他有。呃,他里面有一个属性啊,叫 q a l a。 对呃,你能说一下它的作用吗?呃, q a l a 有什么作用呢?它就可以把不活动的组建实力缓存在内容当中,这直接销毁。它是一个历史主见,首先它不出现负主建业中也不会出现在动员数当中,然后我之前是有看过他的一个圆码的,然后大概是这呃 这几个实践部分主要是这是有个 boss 对象里面有个缓存的黑板名单,然后有个立体勾子,然后的话好像是一个第三开局就是要缓存的组建实力,还有个创业要算三服务组建实力还有个什么你的他可以实时的监听黑板的变化。呃一个将来关键的来说就是没打数的那个。 哦。因为加瓦了之前我们学前的这些我是想做加瓦方向的,所以我是学了学了一些加瓦的东西的,但是的话你说真正的话用加瓦做应用的话加瓦是入门简单就是一个轻松的,所以说我只能是说入门级的。然后 no no 的 gs 呢?它可以就用这样子的,是用后边的东西,而且相对来说还是比较简单的,而且后面的话用自己写写项目的时候需要用到需要用一个服务器,所以我就自己学了一个 no gs 以及一个了解像一个帅以出版框架然后搭建自己的这样一个服务器。 那个是什么呢?他叫一个他著名叫会计的说话区域,然后的话他开启 bsc 之后的话就是不会被浮动的元素覆盖了,而且就此和复元素可以解决一个外面的处境这样一个问题,而且可以包含住这样一个子元素,然后开启开启 bsc 的方式有很多, 你觉得他们两个有什么区别? em 呢?就相对于他的复原素的自己大小来说的,阿姨买 f 呢是相当于更元素的。呃自己元素的装下来说的。嗯你怎么样简单的实现一个前靠背实现前靠背的方式有很多,比如说我觉得很恶心,别墅主的慷慨可以实现,以及各款御驾服点点点都可以实现,但这只是一个前靠背的 好, ok, 那行,呃,交给你了,你跟我说一下呃, dcp 和 app 的协议有什么区别?呃, dcp 和 ap, 然后 dcp 它是一个面向连接的 app, 它是一个无连接的面向连接是只要经过三次一个握手嘛,对吧? app 不需要 apc 面条豹纹的, dcp 面上一个自己留的,然后 dcp 可可提供是可靠的交付,交付完就参合两个月交付, ap 提供的是最大的交付,然后 pcp 它只支持一个单波,然后 vp 是支持单波的光 广播的,然后以及开销的部分的话, pcp 的话开销的话会比 vp 的大,因为 pcp 头部自断的话,呃会比 vpn 要的。比如说八字线以及 app 开始也是有个优点的,只有它的实际性比较好。这是咱们公司技术。放假的话现在用的比较多。是 vip 的还是一个六呢? 还是原声的?都有啊?都有,非相互组跟相互的背都有,一般的呃,现在用原声的相互组织比较少。用幼儿园的两种好的公司的话,其实呃大多数都是在用这两种方法,好了解。

一个网站涵盖几乎所有与 view 相关的知识点,今天我把它推荐给你 view three one piece。 如果你最近正打算开始学习 view, 那你一定不能错过它。 这个网站由国内 vivo 爱好者共同搭建,里面包含了多种与 vivo 相关的内容,例如 vivo 三生态工具 vo 三主流的主建库、 vivo 三热门插件 get up 上排名靠前的 vivo 三开源项目,还有一些开源的 ui 库, 适合拿来练手的 vivo 优秀实战项目。我们随便打开一个项目,这是一个访问人们的 vivo 实战项目,适当也是达到了恐怖的四十 k。 如果你正在学习 vivo, 但苦于没有项目练手,或者在网上找的项目都太过简单, 那么这个项目就非常适合你。这个网站里还包含了 vivo 三元码解析与前端面试题。这个 vivo 三元码解析专题还算是比较齐全的,从小英式系统到编译模块,再到轮胎运行时都有讲解到,而且还 还在持续更新中。面试题专题从最基础的 c s s job script t s w react, 还有小程序专题, note 专题,还有一些前端的算法题,可以说十分的丰富。分享到这里就结束了,希望对你有所帮助,我们下期再见,关注我,了解更多互联网资讯。


大家好,这一节呢,我们来讲解一道常见的 vivo 面试题,那这道题呢会比较开放啊,就是谈一下你对 vx 的个人理解。那我们对于理解这个词啊,第一呢我们先从这个应用层面上呢来讲解一下对 vox 的理解。第二步呢,就是从原理的角度上呢,来分析一下这个 vs 的原理。 那好了,那我们从应用角度上来说,你要先掌握我们这样一个单项数据流的概念,就是 vivox 啊,它其实也是一个单项数据流,包括它里面的这样一个工作流程把它呢应该先都完整的介绍一遍, 介绍完之后呢,你可以哎描述一下他解决了哪些问题,比如说我们把数据呢可以集中的进行管理,实现这样一个多组建共享的一个状态。那我们搭完这个应用层面之后,你还可以跟他说一下,比如说 vax, 他呢有哪些缺点,比如说我们的数据呢无法持久化。那好了,当我们应用层面都搭完之后呢,你还要跟他详细的去看一看这个 vx 的原理,比如说 vs 呢,他内部是怎样去实现一个详细数据的? 他也是通过这样一个 new view 来产生了个实力,他把所有的用户的状态啊都放到了这个实力上来,实现了一个所有组建中的数据共享。而且你可以跟他谈一谈,比如说说模仿化的实现,包括没有推肾和 action, 他圆码里面是有什么样的区别。 最终呢,你还可以给他讲解一下,比如说你在项目实际开发中可能写过那些 ux 的插件。那好了,这道题呢,大家可以自己的去根据自己的理解再去扩充相关的答案。

实习本身的要求就非常低了,你会点基础能做个项目没有面试那不是说找不到,是简历写的有问题?新大三西安自学全能吗?三件套学完了, no 的也学了,做过咱们那个一叉可说话的那个项目,然后再看一下六三,不知道能不能找到一个视线。可以啊,你是大三,你已经会这么多东西了,你有什么可怕的?因为原本想创业大厂,但是发现自己跟人家的差距太大了。你说一下我有 es 是什么东西吧,咱们先做个面试,那就相当是一个状态吧, star, 然后还有那钢铁线,还有个 x, 就共享他那个状态的数据,确定你听过我的课,然后你回答我有 ex, 就这么讲吗?他是用来解决什么问题的呀?不同的一个组建,他那个数据共享的一个问题, 为什么要实现出于共享?你像咱们之前团的数据的话,要说服传子啊,祖传父啊,他那个没有相对应的关系。假如说是爷爷传给孙子,孙子给爷爷,他去解决这类的问题,我的人要求比较高啊。你要去找实习的话,我觉得问题应该不大,但是你的面试题 你得统一过一下,就因为我面试前那些还没看过,面试过程中他问到的所有东西都是都是在考察你的基础,包括考察你做的项目。在面试过程中言谈表达不顺畅啊,都可能会抱到人家的怀疑啊。

分享一个用于 pinaya 持久化的插件,可通过 npm 官网搜索 pinayapoligin process debt state 进行了解。这是我认为目前比较好用的一个插件,提供三种安装方式,在 view 三项目中安装 pinapoligin process dead state。 使用该插件需要提前安装 pina, 然后再导入安装好的 pina 持久化插件。目前页面渲染的 pina 数据按钮,点击更新数据后并没有缓存的功能。切换到 store 下的 index, 点 j s 文件,在 define store 内添加 process 对象,设置 enable 的属性为 true。 开启缓存, 改数据后对页面进行刷新,此时页面的 pina 的数据拥有了缓存。打开控制台的 local store 面板,发现数据被默认保存到了 local store。 当然把它保存到 session storage 也是可以的,通过 storage 来修改。 再来看它的两个其他属性, t 属性允许我们自定义缓存名称, types 则是允许我们自定义需要缓存的数据,比如这里我只缓存 h b 和 h。