微课指令呢,也可以用来编理一个家法词汇。对象我们看一下。嗯,我们先把这个复制一下,改个名, 这个叫做 vivoog。 然后呢,我们把它修改一下,先把这个涉足属性的换一下啊,换成一个对象属性胎统。 书名呢,我们叫做 vc 佳佳啊。深入详情 作者 随心价格 幺六八 这个怎么便利呢?啊,一样的啊, 啊,不可不可啊。那么这个便利呢,是把这个对象当中的所有的属性值啊取出来,我们看一下, 我们直接在这个地方输入歪柳啊,相当于是把这个对象啊刚才说了 所有的属性直取出来。然后呢,我们在浏览器当中看一下, 我们看没有任何问题。那么对象便利的话呢,有时候你可能需要 把这个属性啊,就是这个属性名字也取出来,那么这个时候可以用一个可选的参数啊,一样啊,先用花括号啊,不是我们的圆括号啊,把它扩起来用一个屁啊。 然后呢,这个 k 呢,就代表了这个属性名,我们可以看一下啊, 我们可以在这个地方再次用这种文本插直的方式 哎,我们加一个冒号, 那么这个 k 刚才说了就代表这个属性, 刷新一下啊,我们看没有问题啊。 同样的,在便利这个对象的时候啊,也可以接上这个所以参数我们再加上一个。所以 然后呢,使用两对花括号啊,加一个点啊, 刷新一下,我们可以看到啊,这就是在便利对象的时候怎么去使用啊。
粉丝615获赞3440

好,我们来说一下这道题, v 杠 e f 和 v 杠瘦哪个的优先级更高啊?如果说同时出现的话,那么我们应该怎么去解决这个问题?首先呢,就是在 v 二里面呢? well, v 杠 four 它的优先级呢,是要高于 v 杠 e 符的, 那这就意味着,当威刚 if 和威刚 for 同时存在于同一个元素上时,那么威刚 for 呢,将优先与威刚 if 进行解析和渲染。 那如果在模板中同时使用 v 杠 e 服和 v 杠 four, 可能啊,可能会导致一些性能的问题。为什么呢?因为 view 呢?它会对每个项目应用 v 杠 e 服的条件判断,就是说诶, view 呢,它会对这个项目应用这个 v 杠 e 服的判, 也就说无论条件你是否为真,那么微钢易服呢,他都会去解析和执行。那大家来想,我不管你是否为真,我都要解析是不是在性能上就会有一些呃小的消耗呀,对吧?那为了我就是优化这个性能呢, 我们可以考虑把 v 杠 e 服给他应用到包裹的副元素身上,或者说我们使用计算属性的来过滤需要渲染的数据线,这呢都可以避免上面的这样一些问题。 假如说我们可以使用计算属性来筛选满足条件的数据项,然后呢,在 v 杠 four 中使用筛选后的数据进行渲染,这样我们不仅可以减少不必要的一些计算,同时呢也可以减少一些渲染的开销。另外 就是,如果你呃确定在某些情况下微钢衣服的条件是稳定不变的,那么我们就可以使用微钢瘦来代替微钢衣服。为什么呢?因为这个微钢瘦呢,它只是通过这个 c s s 来控制元素的一个显示和隐藏,不会涉及到盗墓的添加和移除, 所以那在一些场景下呢,呃,它会更加的高效。关于 v 刚 e 和 v 刚瘦的这个区别,大家应该也都很熟悉了,对吧?一个是通过 c s s 来控制显示隐藏,一个呢?哎,它是通过呃创建和销毁这样一个元素来进行显示和隐藏的。 那么总的来说呢,这个 v 杠 e 符和 v 杠 four 同时出现的时候,我们可以把 v 杠 e 服应用到复元素身上,或者呢去使用计算属性来进行过滤, 并可以考虑使用 v 刚受来代替这个 v 刚 if 进行一些性能上的一些优化。 ok, 那么这个呢,就是关于这个问题的一个解释了。

这一节课讲解一个非常重要的质量, we go for 质量作用啊,是循环便利数组,对象数字等等。 we go for 质量是每个项目中都能用到的一个质量。先看第一个作用,循环便利数组在 d 册中啊,来声明,数组 定义 air list。 速度,我们从简单到复杂。第一个速度就是以普通的足串形式,每一个值啊,都是一个足串值的话,比如有 asp, pcp, 最后来个无忧, 总共有三个值。要做的就是要把数足里面的每一项都分别循环便利到 h 一表现中。先来一个 he 用到的方法就是使用 we go for 指令啊,给 h e 添加属性,也可以说添加指令, 他是微钢负质量,注意看怎么来用。先来一个小括号,艾特么逗号 i 来给大家解释一下啊, 艾特姆表示的是数组里面的每一项。再来说一遍,艾特姆表示的是数组里面的每一项,当前每一项就是一个普通的足串, i 表示的是数组的缩影, 后面 in, in 后面跟着的是要循环便利的是哪一个数组啊? a r r list, 那我们就把数字的名字拿过来, 最后绑定 k 属性, k 的值可以是数字类型,也可以是自负串类型,但是 k 的值一定是唯一的,他要具有唯一性。有一个简单写法,就是把所以直接拿过来,前面是按是,所以直接把所以拿过来。 还有一个注意点, item 只是习惯性的来写 item, 这里即即使叫 a, 即使叫 abc, 也是没有问题的啊。 重点要看一下怎样才能把速度里面的每一项都循环便利到 he。 标签用到差值表达式 好艾特么丢到 他,这表达是里面保存代码,在页面中看一下好 asp, pcp 以及尾用啊,就循环便利出来了。能不能把所有的纸也循环便利出来也是可以的,把爱丢进来, 零一二也可以循环辨离出来。这是 v 杠 fou 的第一种使用方法,可以把这一个练习升级啊。当前是一个普通的速度,我们来一个对象速度,再来一个 airobg, 书读里面的每一项,这一次都是一个对象,对象里面第一个属性是 id 属性 好,第二个属相,来一个内幕属相,那内幕里面的值第一个还是 acp, 第二个指为 p 是 p, 最后一个还是是尾用。这一次我们的需求啊,就是要把数组里面的每一项循环便利到一个 ul 和 l 二标签中, 放到 l 里面啊。这一次循环便利的就是 l 质量还是 wegan for 质量 item 逗号 i in, 要循环便利哪一个数组,你就把他的名 字拿过来即可。这一次叫 areobg, 最后绑定 k 属性,把可以把 i 的值丢进来,也可以把 id 的值拿过来,因为 id 基本上他也是具有唯一性的。 怎样来获取 id 啊?使用 atme 点 id 的形式 好, 然后要把 id 手相和内幕手相的值都选择到 l 二标签中, 现在看怎么来获取 id 属相。使用 itme 点 id, 刚才我们已经说过了好,那怎么来拿它的内幕值啊?还是使用插纸表达式? atme 点内幕, ctrl s 保存代码, 艾特么点 id yeah, 注意前面是一个逗号 id 以及后面的内幕值啊,也就循环便利出来了。后期我们在做项目的过程中,这两个用到的是最多的啊, 那我 v 更富。还有第三个使用方法,他是来循环便利对象,在 dc 中声明对象, 估计直接来一个对象,我们在 对象中再来一个 id 属相,再来一个内幕属相好,也可以再来一个属相,叫 ds 系,描述 要把对象里面的属性以及属性值都渲染到狮头草,还是渲染到 ul 和 iv 列表中? 对象有点不同啊,他是以剑直对的形式出现 指令还是微钢 for 指令,但是这一次是以箭直对的形式出现,那 v l 表示的是直, k 表示的是箭, i 表示的是缩影。 这一些字母大家是可以随意命名的,但是这里的顺序表示的是什么?他是不变的,他还就是表示直,他就是表示贱,他就是表示缩影,包括上面艾特姆表示的就是速度里面的每一项,那 i 表示的就是缩影。 好印谁啊?我们的名字叫 obj 啊,就印 obj 就可以 绑定 k 出效。把爱的直直接丢进来, 我们可以 来一个。他的值是什么呢?使用差值表达是值就是 vl, 进 键就是 k, 最后一个是所以啊,这个所以的话直接写出来就行了。 看一下,值为一,建为 id, 第二个值为 php, 建为内幕,第三个值为描述,简直 dsc, 所以同样是从零开始的零一样。 这是吴亦刚 for 指令的第三种使用方法。我刚说指令还有一个功能,可以循环便利数字 利润。想要输出一到十啊,我们来一个 h 一标签,在 h 一标签中输出一到十,使用微钢负质量 爱特么读号爱 in 要输出一到十啊,就直接把 in 数字十拿过来。 item 其实表示的就是一到十了,保存在码看一下。好,当前打印的就是一到十 用的最多的就是循环便利数组啊,那循环便利数组基本上是每个项目都能用到的,这句话我们就讲到这里啊。

hey, you devs welcome back to learning view in today's video we're going to be taking a look at seven ways to improve your v4 loops and write more efficient concise and readable code if you've done any work in view then you know how essential view for loops are to creating your template code to keep it short they allow you to write for loops in your template code which is amazing for things like rendering arrays or lists and even iterating through an object's properties although there are simple to use there are so many ways that you can be making sure that you're writing code that follows views best practices so the first tip is always use keys in your v4 loop this is a common best practice that most view developers already know but by setting a unique key attribute in your v4 loop it ensures that your component and your loop works the way that you'd expect if you don't use these keys you will try to make the dom as efficient as possible and this means that certain elements may appear out of order or maybe your elements one update when your data does if we have a unique key reference on each element then we know exactly when things change and better predict how the dom will act the second tip is that we can use v4 to loop over a range while most of the time we use v4 to loop over array or an object we can easily loop over arrange like this this is useful for example if we wanted to create a page system for an online store and we only wanted to show 10 products on a page this is a simple but very effective tip for v4 loops third avoid using vf inside of your for loops a common mistake that i used to make is that i was using v if to try to filter the data in my v4 loop although this seems intuitive it causes a huge performance issue because view prioritizes a v4 over the vf directive and what this means is that our component will loop over every element and then check the vf conditional and this is super innocent so let's say we are looping over a huge array with tens of thousands of items, but our vf filters all but three products every time we re render we will have to loop over thousands of items regardless if these three specific products changed or not and the next two tips are going to be alternatives to joining a v4 with a vf so the fourth tip is instead of joining a v4 with a v if to use a computed property or a method instead so first a computed property would look like this where we're actually doing our filtering in our script and iterating only over the products that match our conditional so now our template will only re render when one of those products on sale changes as opposed to using a vf when it would rerender every time products change we can also get the same functionality by using a method that has a pretty similar filter another alternative to joining a v4 with a v if is if we're trying to decide whether or not to render a list at all for example if we only want to render a product list when a user is logged in you might want to hit code like this, but even here we're still looping over all of the products even if a user is unlogged in to fix this you can easily change that vf on being with the element with the v4 so the element wrapping the v4 so are unordered list so now if the user is not logged in the v4 loop will not run at all the six tip is how to access the index inside of our v4 loop in addition to looping over noray and accessing every element, we can also keep track of the exact index of every item all we need to achieve this is that an index value after our item inside of our v4 it's that simple and this is super useful for things like pageanation showing rankings maybe displaying the exact order of the list it can all be done using this index and then our final tip is iterating over an object so far in this video we've only really looked at using v4s to iterate through an array, but we can just as easily iterate over an object's key value pairs similar to accessing an element's index, we have to add more than one value to our v4 so, if we only want to iterate over all of the objects items we can just run a v4 with a single argument, but if we add another argument we'll get both the items and the keys and if we add a third argument, we can get the items keys and index inside of our v4 loop so depending on the data you need for example if you're showing a table or something this can be a great way to iterate over an object so that's all for this video i hope that some of these tips taught you some new best practices about using views super amazing v4 directive there's any other tips that you have let me know down in the comments and i'll be sure to check them out, but as always don't forget to like and subscribe if you enjoyed the video it really helps out the channel and until next time happy coating。

好了,这节课呢,我们来看一下 view 的第二道面试题,他问的是谈谈你对于 keep love 的一个了解, 那么既然他问到这么大一个话题呢,我们就要跟他细聊,对吧?首先我们要聊的是他是啥,对吧?他是干嘛的?哎,通过这么两点去聊。然后其次呢,就是他的一个使用场景啊,分为这么三个点, 那第三个点是最主要的啊,就是他在什么叫去用啊?那用他呢,能解决什么问题,是吧?这是最主要一个场景化东西。好了,那到这呢,我们就一项去谈,第一,他是什么? 首先呢,这 keep up 呢,是我们的 view 系统自带的一个组件,那么这个组件它最主要功能是什么呢?是来缓存 缓存组件,那么缓存组件那另外一方面也是说它可以干嘛呢?提升性, 对吧?我把一个东西呢缓存上了,那么你第二次,第三次,第四次,第五次再进去,是不是都不需要重新再打开一个东西了?是,走我之前那缓存内容就可以了,那这样话不就提升性能了吗?对吧?哎,他就这样一些功能。好,那么下面呢,就是他的一个使用,他到底该怎么用,或者说他的一个使用的场景。 好,下面看着啊,那,呃,我在这呢去搭了一个 view 项目,我把它跑起来,左边是我们的前台,右边是后台一接口,我把它打开,那现在这样啊,那我给所有的这个组件都给他加入一个 keep flat。 啊,这样呢,咱们加一下, 把它都放到这个里边啊,那也就意思说我访问哪个组件他都会备有缓存了,对吧?有这么东西啊,好,然后呢,现在呢,我们会进入到一个手 首页,那当我在这输入 local hose, 八零八零走你,那他就会打开这个首页。好,然后呢这首页这块内容呢,我稍微改一下啊,我把 home 这块拿过来,这里边东西我就不要了啊,在这呢,我做一个事情啊,就是来请求一下接口,那我在这呢提前写好了一个接口,大家看一下,就在这个地方, 我们启用这个接口,然后把这个数据呢旋到页面上,那在这呢我们需要引入那个 excels 啊,提前封装了一下子,我找一下是在,嗯,点点刚出去吧。 啊,这个地方是 prom, 这有一个名称,我先看下路径啊。第二,刚出去找到 a p i 下的 a, 不是 a p i。 哦,我这个文件没有放进去,我把这个文件放进去啊,放到我这 a p m 下。 好,到这呢咱们引入一下, ok, 然后这个文件里边呢有一个 door for excels 啊,这是我们请求接口用来用的一个东西。 好,然后呢在这呢,我们就在 ct 中呢发送一个请求啊,把这个拿过来啊,然后呢这个地方的一个 u r l, 呃,就是我们的接口,那个地址看一下啊,就这个。好,我们请求一下。 好,这有个脚蹬 i s console log, 咱们看一下这个接口,它能拿到哈,来到这刷新一下, 嗯,这报了一个错, o b g is nota 方审,嗯?什么意思?类型错误。嗯,我看一下 啊,是不是这个 dollar for excels 有问题,哦,不对,这个地方呢是有问题的啊,是因为我这儿呢首先要写一个,呃,比如说写 api 这个变量啊,这个地方你它是抛出来一个对象,所以说我们这一地方得 request 点儿 好,这样的话呢,我们就拿到数据了,然后呢,呃, i e s 点 date 啊,这儿有个 list, 我们把这个数组给它变取出来。好,先看一下这个数组哈, ok, 数组里边呢,有些内容我们把它渲染页面上啊,具体我们要做什么事呢?大家看到哈,我这给大家画一个图,现在呢,我不是拿到一组数据吗?对吧?这是首页拿到一组数据,然后分别把他们渲染到这个页面上,然后点击某一个,比如点击第一个,第二个,第三个,第四个。也罢啊,反正呢都会进入到一个详 情义,哎,比如说我点击的是 g s 课程,那么这儿呢就展示 g s 课程的内容啊,如果说点的是这个 t s, 那展示出 t s 的内容,哎,就这个意思啊,咱们先把这个事呢先做了啊,那到这个地方呢,我们就需要把这个数据整体给它渲染一下。 好,它是一个竖图,那到这呢,我们就写一个 d 对象。好,上面呢,我们走一个 u l u l, 然后再往下走一个 l i。 好,微钢号。 嗯,那这就是 item, 进好 k 呢,就是 item 的 id 啊,到这呢我们就 item 的内容应该是啊,看 n a k 对不对啊?啊,对啊,好,那现在呢,就在我页面中呢,把这个 g s 课程呀, t s 课程呀, view 课程呀全部选到页面上, 然后同时我点击每一个,他可以跳转到他的详情页。那我在这地方呢,去创建一个详情页啊,创建一个这样的 vivo 文件,比如说我教他 detail 吧, 啊,然后这呢写一下,这是详情页, 哎,详情页。嗨,那就这样吧,详情就详情吧,管他呢,反正人家想请是吧?好,然后呢,这呢,咱配一下他的一个路由哈,那当然,我这呢采用懒不懒加载,这都无所谓了。那这我就叫 d t l, 哎,怎么抵放呢? d t l 啊? d t r。 ok, 那就叫几七二点六了。行,那这我们详情页,然后呢,我点击它以后呢,就会跳转到 in 的这个详情页,对吧?那这样呢,我们加一个试卷吧, 加一个 click top 技巧,或者咱们叫 go 技巧,是吧?进入到详情页。 好,那我们点击它以后就需要 this 点入着点故事啊,进入到杠 d q 好了,我们来试一下啊,那现在呢?我点击走,哎,进到详情页,对吧?返,返回过去点一下,走啊,反正呢每个都可以进去, ok, 行,那现在呢,就有个问题啊,比如说我点击了 ts 也好,点击了 gs 也好,还是点 vivo 课程也好,那我进入到了详情页, 那么这个详情页是不是要请求数据啊?因为我点击了 g s 课,那么你这这个详情展示 g s 课程对应的,比如说封面图,大家可以想象成就。是啊,我们购物网站,比如京东,淘宝这样一些购物平台,我点击一双鞋进去就是鞋的详情,对吧?我点裤子进去就裤子详情, 我点个什么电脑乱七八糟东西进去以后呢,就是对应的详情吗?那所以说呢,现在做事情是点一下,点一下,那我不仅要跳转,我还要做一个事情就是,呃,可能会把这个东西的 id 给传过去,那这是有一个 id 号,大家可以看一下啊, 对吧?我要把 id 号呢给他传过去啊,所以说呢,我们在这儿可能要传一个 item 的 id 啊,然后呢,再这样接收到这个 id, 然后这儿呢给他传过去, 通过我们的 url 给它传吧 query, 然后这儿 id, ok, 那现在大家再来看,你看,我点一下上面有 id 三,然后点一下上面有 id 四,那进入到了这个页面就详情页,我需要把那 id 呢给他拿到啊,那到这我们就可以通过任意东西吧,比如说我们就通过 pretty 的拿法啊,拿到这个类似点 root, 点 carry, 点 id 啊,咱们看一下能不能拿到啊,点一下,你看二,对吧?好,点一下大家会发现什么问题? 这个地方的五这段还是二,为啥呀?因为缓存了呀,这个缓存的好处是什么呢?大家可以试想一个问题啊,就比如说我这个用户啊,这个用户 在首页点击 g s 课,那进入到了这个页面,是 g s 课程的详情,对不对?好,那我如果剪 t s, 那么进去是不是 t s 详情啊? 但是呢,用户有一个这样的问题啊,就是我点 g s 进去以后,你请求,对吧?因为你看啊,你首页请求一次,你点击首页的 g s 进入到详情页,这,这也要请求一次这两次了吧,那用户如果点错了或者干嘛返回到商业了, 返回商业以后呢?他又点,接着进去了,你又请求一次,他每次进去,返回,进去,返回,注意点都是同一个,你每次要请求, 那么如果说同一个就没必要请求了,咱们缓存下来不就可以了吗?对吧?你因为请求次数越多,是不是你这个浪费的速度会跟后端那边你不断请求他,那这样的话呢,你俩通信这个时间就会加长吧, 所以说呢,我为了解决这个性能问题,我们只需要把对的页面,他可能不断去进入到这详情页,我把它缓存下来就可以了,对吧?那么现在他已经缓存了,大家可以看 我点击这二,你看我点击这地方五,他永远是二,为啥呀?可不嘛,这个烟也被缓存了,这个生命周期他不会执行啊。那昨天我们说过了,第二次或第 n 次进入,他只会执行这个生命周期啊,并不会执行那个, 呃,比如说 crazy 了啊,所以说呢,我们就需要把这家伙呢给他加上啊,他会直接这里边东西。好,我们可以再让他每次 ctrl 一下,比如 ctrl 一个一吧,然后每次 ctrl 一下,小心 好看啊,进去一侧执行一个二,一回去啊,再来你看又执行一个一,对吧,但是这个二这个地方就不执行了,是不是?也就说每次你只要把这个放到这, 好,你再看回去,大家看到啊,点一下执行个三,点一下执行个五,再点,你看对吧?他是这个什么六七,他是执行的,但这些就 不执行了,那么我就好办了,只要判断你这个 id 值,不想懂怎么怎么样,对不对?那这样我们做的这个步骤呢,肯定是这么来做的,大家看着啊,我们上来呢,是取到这个 id 了,对吧?那我们可能会发送一次请求,那我这呢先写一个请求啊,也是要把对应的这个内容拿过来,我们在这个详情页也要请求一下。 这是,呃 ur, 那就是 id 啊,然后需要给后端呢?呃,传据,传递这个一定的数据,我看一下传什么啊?呃,传的是 id 啊,传的是 id。 好,那我们就把 id 给它传过去。 ok, 到这 id 冒号 把这个给他传过去。 this 啊,这个没有写方法。 get 这个 好,把这个 id 给它传过去。然后呢,我进入到这页面,我上来就调用你一次啊,上来我就调用你一次,或者说呢,直接在它里边去调用都可以。那上来我在 protet 中调用一次,那调用完以后呢?它会返回一个数据,我们这有个 r a s, 我把 r a s 数据打印一下, 比如说我现在点击的是,呃,这个 view 课程吧。走,那这儿拿到数据呢?肯定是 view 课程,我把这个文字呢放到这个页面上,好吧,那就是它的 data 的 list 点儿等于 啊,我把这个数据呢放到页面上, 这是详情页,然后后面拼接一个它。好,那么现在呢?有意思说,刷新一下啊,大家看着我点一下项目课程,哎,这是项目课程,对吧?但是你注意,你返回,你再进入 react 课程,它变吗?它不变。为什么呢?是因为你这个请求它根本没有执行, 是吧?但是你不能说每次都执行吧?那什么样时候执行,什么是不执行的啊?就是如果说我第一次点击 g s 进去, 是 gs, 对吧?我再点一下 gs 进去还是 gs, 如果说我反复不断点击的,也说我上一次点击的和你本次点击的是同一个,都是 gs 课程,那这个页面就不需要再次发送请求了。 那如果点击不是同一个,我们再发送气球,对吧?就这么一个意思,那这样话呢,从而我们就提升我的性能了,对吧?不该加载的不加载,该加载的 加载呗。哎,就这意思。那怎么样判断呢?那怎么样判断我这个地方呃是不是同一个呢啊?有很多的方式,比如判断他路由啊,对吧?路由你修改了或者判断我的数据啊都是可以。这个呢就由大家来啊,比如说 我们现在呢,呃从这个地方点过去,我们知道有 id 吗?对不对?那我可以把你 id 呢给你记录一下啊,就是我这呢可能有一个 id 值,比如它为零啊,默认为零我们可以记录一下。 那到这个地方我们记不下 id, 那就是直接复制也可以,那么你 console a log 弹一下就把这 id 值给它复上去。就是 list 点 id 等于它 好,然后这儿呢放这些 id 就好了。然后呢这些 id 呢我们就记录上了。然后呢你在这里 地方啊我们在这地方可以打印两个东西,一个是 this 点 id, 一个是当前的 id。 this 点 id 呢是我之前记录好的。这个呢是实时的 id 啊,我们可以看一下啊。 返回,哎,我们重新进 logo hose 八零八零,大家看着我点下项目课程,哎这两个都是四对吧?好,我返回过去然后点下 rex, 你看之前是四,现在是五,他俩不相等我们就再次发起求啊,如果相等就不用发送了,所以说我们只需要判断,如果说这俩怎么样 不等了,对吧?那我们再次发送这个请求就对了。那我们可以看一下这儿的一个 network。 好,大家看着啊。 哎我把这稍微清一下啊,大家看这个地方。我现在呢返回到我的这个首页。好, 翻到我的首页以后呢?呃他已经请求了一次,我给大家看一下啊,要不然咱们这样切换到这边 啊。刷新一下,大家看,他已经请求了一次啊,就在这地方已经请求了一次,我把它清空,好,注意看,我现在呢,从首页点击到 g s 课程, ok, 请求了一次,反应过去,好,我再点一下 g s 课程,大家注意看,是不是没有请求啊, 因为它 id 相同嘛。但是我再点一下 t s 课呢,哎,这地方还是 g s 课的吗?我看一下啊, t s 课哦,并没有去更改那个数据哈 嗯,并没有更改数据,咱们看这个地方他有没有执行,如果他俩不相等,咱们打印一串一。 呃,回去点点 点 a c 等我们看这两个值,这两个值还是不对的,就是要判断他俩的怎么回事呢? 嗯,这是一和一,没错,这是一和三,那一和三是不相等的呀,他俩非等我们再次发送请求哦,这个地方啊,这个地方,这个 id 应该放的是这个 id 啊,实是这个 id。 好,我们再来,小心来看网络哈。那现在呢?我点击 g s, ok, 返回过去再点,你看不会再次发送新的请求,对吧?然后呢,我点击一下 t s 走,你看 是不是又发送请求啊?哎,让反过去再点 ts, 他是,哎,这个 ts 再点,再点啊,那这这个还是有问题 这个 id 值是有问题的啊,那我们这儿再把 id 值重新给它复一下就好了 啊。重新给它复一下,然后走这个 id 就行。重新给它复下值啊,重新给它复下值,那这样就 ok 了,我们再来刷新。 好,点击 g s 课,走,只有一个请求,走,哎,不会发送新的请求,当我们点击了 t s 走,发送一次新的请求,反应过去再点,你看就不会再走新的了,对吧?好,点击不同的它就会发送一次,不同的就会发送一次同的,哎,同样的就不会再次发送了,这就是它的使用场景 哎,所以说它使用场景呢,就是来缓存组建的,缓存组建提升项目的性能 啊,具体诶,性能哈。啊,具体的一个实现呢啊,比如首页数据啊,首页进入到详情页, 进了详情页啊,如果在首页啊,如果用户啊在首页点,每次点击 都是相同的, 都是相同的,那么详情页就没必要请求 n 次了啊,直接缓存缓存起来就可以了啊。当然啊,如果 点击的不是同一个,那么就这个请求直接请求是吧,这就是他的一个使用场景啊,不管怎么样他是提升我们的性能的,减少发送请求的数量,那就是提升性能。 哎,这就是 keeper life 的它一个使用的场景啊。那么我们在面试的时候呢,不仅要给面试官介绍清楚他是什么,还要告诉他他能干嘛,他的功能是什么,他在什么地方用啊?一定要说场景, 你场景说的越多,就会让你的面试几率呢成功率越高。还有比如上节课我们说到生命周期,那么大家可以说一下 crazy 的它的使用场景 来,某些你没有用过你就可以不说,因为不见得所有东西我们都用过,对吧?比如说 crit 的它的场景它在什么上用吗?啊?别人面试官问你在哪个,什么时候用过这个生命周期啊?啊,我在发送请求是用 crit 的对吧? 忘记的用插件说,是吧?你就可以完全这么去说了啊。那有关于这一课内容,咱们先说到这,然后我给大家多一个提醒,就是大家一定要说场景,场景啊。行,那本节课呢?咱们就先说这么多。

好,我们来看这道题啊, will 中便利全局的方法有哪些?这个的话他说的不是很清晰啊,咱们就来说一下 will 里面 呃的一些便利方式吧,或者说关于 gs 的一些便利方式,咱们给他说一下。 v 杠 four 咱们就不说了啊,就是说一些简单的便利数组啊,或者说便利对象的内容。 嗯,比如说第一种,呃普通便利,好,那咱们可以是不是对向点 for e 吃, 是吧?那它具体怎么用的呢?比如,哎,我们有一个数组点 for e s h 一二三四, 这里面呢我们要写一个 fashion i t e m index, 好,那么在这里呢,我们就可以去打印这个 item 和 index, 这里面的话,它里面的每一项呢就能够打印出来了,这是第一种编例。 第二种便利呢,就是说我们要对数组里面的每一个元素呢进行一些操作,比如说我要给他们全部加一,我要给他们全部加二,对吧? 对,元素统一操作。那咱们可以使用对象点 map 吧,是吧? 好,怎么用呢?比如说我有一个数组,对吧?然后我来玩了一个,你有新的 air, 他就等于原来的 air 连麦跑里面 section, 然后 item 每一项,对吧?然后我要把它每一项返回出去, item 加一, ok, 我们直接打印这个新的数组就可以了。 还有一种呢?第三种就是,呃,查找, 查找符合条件的元素,我们可以使用对象点 filter 这个方 filter 大家应该都很熟悉了啊, 怎么用呢?比如说 a r 点 future, 点 f 里面的每一线,好在这呢?比如说 if, 如果说 item 它大于了二, 是吧?那我们直接 return 一个 force, 否则 e l s e, 那么就 reten 除,是吧?这样的话就是通过一种过滤来实现的。还有一个呢,就是我们可以查找它的一个锁引啊。 嗯,查询,查询符合条件的元素返返回,所以那用到的是什么方法呢? 是对象,然后点 find n t i let's find index 方法, 那这个具体怎么用的呢? a r r 点 find 引,弹词里面也是 fiction item, 好意思,如果说你 item 大于了一,是吧?好,那我就 return 一个 数。好, e r s c l 四,呃,这个 return first, 它返回的是,所以,明白吧?当然除了这些方法呢,还有一些方法,比如说,呃,像什么 uni 兑现, 点 e v e n i n g 这个方法它是干嘛呢?就是遇到不符合条件的就会停止, 遇到不符合的对象,对,停止, 还有什么呢?还有对象点 sum 吧,对吧?他是怎么 就便利所有的元素,如果找到符合条件的元素呢?就停止。便利,找到符合条件的元素就停止。 好,我当然还有很多啊,咱们在这里就不一一再说了。今天,呃,这道题呢,咱们就说到这里。


when we use ask, we normally use for ask for something can i ask you for a cup of tea please can i ask you for a favor don't ask for permission ask for forgiveness when we talk about belonging, we normally say two it belongs to me, it belongs to you and never belong for so don't say that she belongs to me when we say care we care for somebody, i care for my dog, i care for alex, i care for my family, you care for him and the last but not the least when we were saying prepare, we always say prepare for something, i will need to prepare for the festival prepare for battle。

first thing that we're gonna do we're gonna talk about when we used to the first case when we used to is when we're talking about a destination i am going to germany to germany at the end of april i'm going to munich by the way or there is another example we are going to a restaurant tonight to a restaurant because this is a direction i'm not gonna back out of that i want to go to spain second case if we're talking about time, and if we're talking in british english, what they love to say it's a quarter to two, which means 145 like americans well, i've never heard americans saying quarter to two or 20 to two and whenever i heard in gray britain, i was a little confused, but they say that a lot it's quarter to two americans would say it's one 45 caskewater is 15 minutes and there is a second case of using two with time for example, the restaurant is open from monday to friday so we can kind of replace two with until and this is another way to use its hope for example, the restaurant is open until 5 pm or the restaurant is open from 9 am to 5 pm and this is when we use two but i do monday wednesday friday from 7, 99。

大家好,我是清楚设计的那个,咱们今天讲的是图片转 cd, 图片转适量图的这个长软件。你 从连接上下载完以后,是一个这样的阿突 v 零四杠 y s c r 的软件,然后右键解压索道, 然后会得到这样一条线,直接双击他进行安装,点试进行安装就可以了。 因为我的电脑已经装完了啊,所以这就不在下一步下一步了啊。演示了,直接咱们讲一个软件怎么用就可以了。 安装完以后,在桌面上会得到一个这样图标啊。图标。快捷方式双击他, 放弃他以后,然后在他的默认位置让你选图片,让你选图片。咱们可以随便选一张图片啊。打开打开啊。 要转适量图的第一步是把图像转化为二十四位 rjb 挥动。转换完成以后,点适量,自动适量化, 右下角地图改成 cd 图形,点确定点开始,这样就适量化了。也就是这个图形他自动识别了,自动识别了。 然后转化完成以后,再点文件输出适量,输出适量啊。保存类型改为 sf, 然后看好路径还是桌面保存,然后确定, 然后去桌面上找咱们转化出来的这个文件,用 cad 把它打开。哎,这就是咱们转化出来的 图片,转 cad 的,这是可编辑的,这是可编辑的啊。当然这个因为图片的这个像素的高低,咱们转出来的这个 cad 文件也有时针,比如说这这个舞就变形了。当然,图片像素越高,转化的文件越好。 都是可编辑的啊。分头层他也是单图层,颜色都都是可编辑的啊。线宽线线都是可编辑的啊。嗯,留下指导队。

