00:00
好了各位,上一小节我们说了解决这个多级路径,然后刷新页面样式丢失的这个问题,对吧?哎,怎么解决呢?写好笔记了,Public里的index里边引入样式的时候别写点杠,写杠这种方式很常用,或者是别写点杠写这种方式也常用,但多说一句,这种形式百分号public url100分号只适用于react的脚手架,里边这么写,你在别的地方这么写不行,人家根本不认这东西。还有一个办法就是使用哈希RO去解决,对吧?这个呢,其实用的不多啊,来给这些东西呢,关掉脚手架,停掉在这儿src再复制一份。为什么我一直要复制这么多份儿啊,同学,只想让你练习路由的时候清晰一点,你想一下路由的基本使用和这些东西我都混在一起讲就特别乱,一个是一个的啊,一个点是一个点,Src下划线我就简单说了啊,解决样式丢失问题啊,就不说的那么麻烦了,什么多级结构刷新页面对吧?好了啊,那哎呀我把src改了是吧?那这个就给它改一下啊,我应该改s RC copy是吧?啊那这叫src,好嘞,来,那咱们开启一下脚手架NPM啊,或者用yam吧,Start,你启动的时候,同学你用哪个命令启动都可以,你是ya start还是n PM start都行,但是你安装东西的时候正好也跟大家说一下,同学你发现啊,我在启动项目的时候,我有的时候用ya start,有的时候我用n PM start都行。
01:31
用哪个随你的便,但是最忌讳的就是你今天上午安装一个包叫young ada对吧,安装A这个包,然后呢,你就持续一直都用样去安装东西,突然有一天呀,你想安装一个X那个包,你居然写了NP mi,然后X,那这个时候就容易出问题,在脚手架里边,如果NPM啊和样你混着用,一会儿用它安,一会用它安,极其容易造成包的丢失,OK,所以说尽量啊包管理器不要混着用,好吧,来我们再往下启动了,打开看看能不能展示没问题是吧?哎,点这儿点这儿也没问题,刷新呢找诶目前也没有产生样式的丢失,那我们目前是怎么做的呀?回到这儿找到public啊,Src下的public啊public这的啊,不是src下的啊,是public public和src是俩并列的,Public下的index,这哎,看是不是没写点,OK,好了,关掉来走说一个问题,就是关于。
02:32
路由的精准匹配和模糊匹配啊,来打开APP还是在这儿研究来往下走同学啊,那接下来我就把这个杠艾特硅谷,我就都删掉吧,好吧,同学啊,因为刚才我是为了演示问题,加上这个东西呢,它比较长,嗯,删掉好啊,那刚刚啊,我们说是这么一个过程,点击about,路径变为刚about。你所写的路径是不是杠about,人家要的路径是不是杠about,那所以说是不是匹配上了,那所以说是不是给你展示about这个组件呀,哎,好了,同学,那你说如果是这种情况呢,你注意看啊,我改一下home吧,我不破坏那个about,我改home,你看着比如说叫做home下的A下的B,同学我问你一下啊,你输入的路径是什么杠home。
03:28
啊,人家要的是什么呀?杠home,杠A-B同学,你觉得这算匹配不?你看人家要杠home,杠A-B,你却只给了一个杠home,你说算匹配不?啊,那咱们就用事实说话啊,回到这儿,我重新打开这页面,我还没点呢,点击about肯定不受影响,咱就看点home的时候还能不能出东西了是吧?走同学,没了,那就证明没有匹配上对吗?说老师这也好理解呀,回到代码,人家要这些嘛,那你却只给了这么一个嘛,那你肯定少啊,你给的东西少,那还能匹配上?哎,那你说要是这种情况呢?
04:09
我给的是B,说老师那还用说,这不也是没匹配上吗?那你看看老师,你给的是杠home,杠A-B,人家要的是杠home,那不一样啊,对吧,你这不给多了吗?嗯,那这时候你再看一下,打开来关掉,点击about没受影响,接下来你注意看,哎呦,V同学,路径确实变为了杠home,杠A,杠B,我问一下home组件展没展示出来,展示出来了这啥意思呀?说一下这就叫做模糊匹配啊,什么叫模糊匹配呢?那你看一下啊,你给的是杠后杠A-B。啊,人家要的是杠home,那我就想问一下,是你写的比较多啊,你后边可能还写杠C-D呢,对不对,那我就想问一下,你所写的这个东西,杠home,杠A,杠B到底有没有包含着人家要的杠home,有没有包含着人家要的这个杠home有没有包含有,所以说就算匹配,也就是说同学人家要的你一个都不能少。
05:20
哎,也就是说人家要了home AB,你却只给了一个home,这就不行,谁让你给的少了呢,点击home看这没有展示,这不行的对吧?哎,OK,说老师那要是这种情况呢,我给多了,他没要那么多,哎,同学,这行这行你给多了可以对吧,那再打开走打开,诶开了点击about不受影响,点击home对吧?哎,这行啊,说老师明白了,也就是说我能多给点剩下的那些他不看,他只看开头这一块,哎,是不是只看开头这一块呢?如果我这么写的,同学杠A杠后我在杠B,嘿嘿,你分析吧,同学,我问一下啊来。
06:07
你输入的是什么呀?杠A,杠home,杠B,人要什么呀?杠home老师,那我明白了,那因为我输入的东西里边包含这个杠home,那就算呗,那可不一定,打开网页我们瞧一眼走,点击about不受影响,点击home,嘿,不行。哎呀,说老师这怎么记呀,这到底是什么情况啊,同学你就这么记,人家要的东西你一个都不能少,而且同学你看这儿啊,它是这么一个匹配的过程,你不是写了杠home,杠A,杠B吗?其实它在匹配的时候呢,他把你的home拎出来了,把你的A拎出来,把你的B拎出来了,然后按照拿出来的这个顺序依次到这块进行匹配,就把这个里边的home也拿出来了,首先你输入的是home,还有A,还有B,人家只要home,同学那我问你算不算匹配,算这就是属于模糊匹配,但如果说你写出了刚才那种代码,杠A完了,您再杠home,你再杠B,那可不行,那人家拿出东西的时候,来到这一步,人家拿出来的是谁呢?A home b,然后就来到这进行匹配,这拿出来的是谁呢?Home同学,他发现A和home对不上,根本。
07:27
本就不再往后看了,是我知道,如果这个东西让咱们封装,说老师那再多做一步呗,这不行,再往后看看呗,不看,如果最开始就对不上,他就认为你是对不上的,所以说同学,简单记就是人家要的东西一个都不能少,而且顺序也不能串,哎,那这么写就是属于人家要的东西真就一个都没少,虽然你给的多了一点没关系,至少人家要的你都有了,而且顺序呢,你看也是能对得上的,对吧?至于说你后边还有什么,那我不管了,哎,这就是属于模糊匹配啊,说老师那它默认就是模糊匹配呗,对,那如何开启精准匹配呢?是吧?哎,同学你给这加一个属性就可以办到精准匹配,什么叫精准匹配呀?同学,那就是你所输入的东西必须和他要匹配的东西完美对应。
08:27
说老师我多给几个不行,我少给,那是你少给更不行了呀,哎,所以说老师怎么开启精准匹配呢?同学,我不想直接说那个单词有道,咱搜一下啊,有个词儿叫精准的,确切的有这么一个词啊,我们搜一下精准走呃,哪个词儿呢?我找一下啊啊说老师随便找一个不行,同学随便找一个肯定不行啊,那是人家的封装是吧?哎,我再搜一下准确的,我记得是有那个单词的啊,这儿呢,准确的就这个单词,说老师为啥不用它呢?这要让我封装,没准我就写这个单词了,那不人家的封装嘛,对吧?啊,Facebook的封装,人家选了这个词啊,准确的叫做exact啊,准确的好了,你把这词复制,当你在注册路由的时候,你说exact为true,啥意思?那就是开启什么呢?精准匹配,我给这个也开启精准匹配,那这时候你注意看啊,同学,我输入的是什么?杠home-A,杠B。
09:28
人家要的是什么?告诉home,我的东西跟他要的东西完美对应了吗?没有,你给多了,你给多余了是吧?A和B你给多了,所以说不算匹配,那么打开我们瞧一下,点击about不受影响,因为人家要的是about,我输入的是about,当你点击后面的时候,你看不行,对不上是吧?同学,哎,所以说呢,这个东西用于开启严格匹配,默认是模糊的匹配,如果写了这个就是严格的匹配,其实还可以有一个简单的写法,就是你不用非得写这个exact等于true,你可以直接就写一个单词exact,意思是啥呢?就开启严格匹配了,那你看一下走,点击about没问题,点击后面它就不行,因为你输入的东西多是吧?哎,有些同学可能就说了,老师,那我明白了,咱就这样呗,以后呢,老师什么模糊匹配啥的,我不记那些东西了,什么我输入的东西得多于他的是吧,不能少是怎么怎么地什么顺序,老师不记就以后我就养成一个良好的习惯,就注册。
10:28
不由的时候吧,我就咔一下子全都开启严格匹配,同学不要这样做,这样做会引发严重的问题,我知道以目前你观察这一点点代码,你会觉得老师我开启了严格匹配,那真的是太省心了,人家要啥我就写啥,没有那么多的事儿啊,什么给多了给少了的是,就看这点代码,同学特别适合开启严格匹配对吗?但是啊,我可给你讲,同学如果严格匹配你要随便开,有的时候就会引发很严重的问题,说老师那严格匹配使用的原则是什么呢?原则就是如果他没有耽误你页面的呈现,没有引发一些什么其他的问题,我们就不开启严格匹配,如果说不开启严格匹配会引发一些问题,你再开启,就一句话,如果东西都是好好的严格匹配,你别碰它啊,如果出现了一些诡异的状况,说好多东西都往一个地方跳了,跳的不对了,你想一下是不是模糊匹配。
11:28
引发的问题啊,然后你再开启这个严格匹配,哎,所以说呢,同学严格匹配呢,哎,我先给这放着,但是你要知道这东西不是说哎就我就开着吧啊,不是说开了他就一直有优势的,不是同学这东西不能随便开啊,但是这一节呢,我毕竟给你讲的是严格匹配,所以说呀,同学我得把这严格匹配呢写在这好吧,来这小节呢,我们停一下。
我来说两句