00:00
来还是接着咱们上一节课来讲,上节课呢,我们用ES6模块化这种语法,最终是不是打包是成了be GS这个文件,最终呢,我们让它在呃浏览器端呃正常的运行。那么这个时候上一节课我们在这啊,这叫主模块引入的时候,我讲了,这你是不是必须要用对象解构赋值的形式啊。如果说不用的话,那他拿到值是什么?I find。哎,下课了就有同学问我说,哎,老师这个是这样,会不会太麻烦了。其实挺好的,你能想到这个,嗯,说明什么,你在。就是一直在按,呃,你就像我们不不满足现状,或者说一直在质疑一个事情,那这样的话才能推动一个事物的发展。哎,就像现在咱们一直炒的特别好,这个爱大家知道是什么。啊,人工智能吗?前段时间不是那个阿尔法狗和那个谁。
01:01
嗯,韩国那个不是下棋下棋吗?嗯。那那真是完完胜啊,现现在讲阿尔法它的人工智能又推出了一个新的,把以前这个机器干的是100:0,好像是。秒杀啊,就是他一直在一直在不断的升级啊,这就是人类,他一直在探索,一直在质疑我当前的是不是最好的,所以才能发展。如果说咱们上来就满足现状的话,那我估计全世界的计算机里面只有一个能输出一个hello word。嗯,当你输出hello word,如果说满足的话,那就完了。咱们人也是一样啊,那至于既然说同学问到了,也正好就是我接下来要讲这种方式,你只能以解构赋值的形式来用,那有时候你无形中我是不是多写了一些内容啊?我们能不能还是回归到以前,我就是定义个变量去接收它,你暴露什么我就接收什么,我拿过来就要用,也有,哎,还记不记得我这猫三是空着的。
02:09
哎,我们之前讲了MODU1MODU2,在这个里边,我一个是不是叫它分别暴露一个,叫他统一暴露他俩。连起来,我叫他成威暴露。哎,你们可以把这些东西自己要描述一下,这个也是我自己想的。啊,叫常规暴露,与常规暴露相对的一种方式啊,就是我们293这要讲的叫默认暴露。默认暴露首先有一个特点,它可以哎暴露。任意数据类型。任意数据类型,而且我暴露什么数据,哎,我接收到的就是什么数据。默认暴露的语法是什么呢?注意看,Export加了一个东西叫default,一看到这个就能懂。
03:07
那它的语法是什么?后边跟的是你的。你说后边你放什么都可以,跟我们之前是一样的,无非不过是中间是不是多了个default,那default本身的含义就是默认的意思。注意看我,今晚我去暴露他。我现在是不是相当于暴露了函数,而我故意写了一个介头函数,他现在是不是没有名字,比如说我是啊默认暴露的检测函数,那这个时候你这边暴露了,我在主模块这这边什么叫引入啊。这一把看我怎么赢,直接import,你随便写写叉叉叉都行,我就写个六三,然后from当前路径下的。我们是不是应该找他?这一把是不是又回归到以前那种方式了,那这个时候我告诉他MODULE3它就是一个函数。
04:05
那也就意味着我的用法是。括号调用。这没问题吧?但是呢,接下来我在这儿刷新有吗?没有一样的道理,你现在一直引用的是之前打包好的文件,想要看到怎么办?重新你得去打包编译。呃,先去什么BA是不是转1S6接着呢,包去重新打包来走,你这为什么没有啊,等一下啊,看这是不是发黄了,我再回去一下再过来。没有。毛九三,我们也执行了,没有问题,哎,这边也没有问题。费劲啊,来,那这样吧。这是把我们这个浏览器页面打开。反应慢哈。
05:00
是不是这个死活刷不出来,就不要再不要去信任它了,把这个关了,我们重新打开一个,哎,现在是不是出来了,哎出来了以后,那现在这种用法很明显,你暴露什么,我直接接收什么。而且哎,我还可以暴露什么对象,那这个时候我问大家一句啊,就我们现在看到现在的语法了,我问一下你,我在这儿能继续写吗。能这样写吗?可以啊。你比如说我这是不是有个message,哎,你比如说这是。就是默认暴露,好,那接下来我来个fo走你。来,我去呢,换个行。你看我现在是不是没动上面这个,那这个时候我在这儿,你还你其实不要着急去调度它,因为你不知道是什么,你是不是应该是。
06:05
打印一下它好,那这个时候看到吗,我去。重性导包编译,你发现有什么问题没有?是不是直接报错了说什么?是不是直接指向什么xport,这意味着你当前的语法不对,你就默认暴露,只能写一次。那有的同学想,我想暴露很多数据怎么办,你说怎么办?对呀,对象是不是用来管理数据的,我完全可以把所有的数据是不是都拉到这个里面。哎,那这个时候好,我现在是不是暴露一个对象,那其实我们现在是不是应该知道我的用法是什么呢。首先。马丁三现在是对象吗?它里面是不是有个Mo?那接下来我去。重新转一下,转完了,然后重新去编译一下来。
07:01
我就怕说出来。出来了,好,哎,没有任何问题,那这就是我们的第二种方式叫默认暴露,哎,这两种方式呢,大家都得会。没问题吧?好,那接下来再说一下这个第三方的模块,怎么使用也简单。比如说我们现在要用一个query,那应该怎么办呢?我们之前都是引入本地的,我们能不能自已去下载一个呢?也可以吧。问一下大家结婚的版本有?有几种类型啊,你们知道吗?咱们平时是不是用的都是一点几的,其实我告诉你结婚有二点几的还有多少,哎,大家知道是吗。知道就行了,那如果说我n PM install。一个我问你下载是哪个版本。最新的我给你看一下来。
08:01
好看哪呢?看这是不是3.2.1。这是三点几的版本,但是很明显我们开发的时候是不是用一点几的版本。三点几的版本为什么不用呢?诶对,它三点几其实和二点几都是针对的是高级浏览器,一说到高级就是IE68那些垃圾。不理他。啊。那这是一个,所以说我们平时其实不用三轮。而三点几,其实人家现在还在维护啊,还在去更新,二点几呢,其实已经停掉了,停掉了是只维护他已有的那些,呃,盆盆罐罐的,他不再推新了,已经。而我们用的一点几,是因为一点几已经可以完全保证我们,哎实际开发当中去应用它。好,那现在三点几的我不要它,我要指定个一点几里面最新的,我应该怎么办呢。
09:03
知不知道n PM install的时候,我可以指定版本去下载。你比如说你不是要下解瑞吗?如果说不指定版本,它下的是最新的一个,如何去指定呢?看着紧跟着后面加一个爱情。艾特,后边你比如说我放个一,它就会像杰克一点几的版本里面最新的。当然了,你继续,你比如1.1亿,那你说他下载什么。1.11里边最新的,因为我有可能有1.11.3 1.11.7,那么他肯定会下载这个能懂不啊,当然了,你要是他1.11.3,这其实是指指定死了,我就要下载对应的版本。知道吧,那我们通常是这样做,走你。看到我点一下这走你。这是不是换掉了,哎,他为什么没去加一个新的呢,换掉了。
10:07
覆盖我知道是覆盖了,我的意思是为什么覆盖不再再去开一块地再写一个呢?我两个版本很明显不一样啊。名字一样,其实是这样的啊,你想我我就问大家一个常识,我在一个实际的开发当中啊,你比如说我们用的技术选型式解剖人,有没有可能在一个项目里面,我既用1.7的版本,又用1.1的版本。有没有这种课的?啊。或者说让你现在不知道让你用,你会这样用吗。肯定不会,为什么。你这样用的话,你先说有什么意义吗?没有任何意义。而且你如果是用两个几何的版本,你项目无形中重了很多。别人一看你这就不行。他默认认为是我同一库是不是只能用一个版本,所以说把之前的覆盖掉了。
11:02
那既然说我们现在下载下来了,我是不是就能去我当前的项目里面用这个假快啊。用法呢还是一样的,我现在要引入第三方的库,那这个时候我应该是写在最上面注意了,比如第三方的库和默认暴露的形式一样,后边这直接用。我是不是声明那个刀乐福啊,因为我们习惯是不是就用刀乐福啊。那这呢?看到没有,直接可着块那个是一样的,直接是不是引入它的包名。那接下来我就可以应用一下。就放到这个上面吧,Dollar佛,然后呢,来一个body.css。来个这一把,来个什么呀。来一个这个颜色吧,啊,绿色啊,然后呢,我得重新去。先去转,然后呢,再去打包编译。
12:02
来刷新一下啊,是不是出来了,其实你们看到绿色是不是感觉能放松一点。我和你们说过我喜欢这个颜色吧,但是现在不敢说了啊好,那这样的话,我第三方的不用,就是这样用,没有任何问题。到现在为止,我们按ES6这种模块化的几种情况全部给大家讲,现在有一个问题,刚刚一直没有同学去问我这个问题。你们下载完包有这个吗?没有,哎,我先大家提一下,这个东西也是NPM5的一个特征,当他下载完包除了有PA阶以后,它还多了一个这个杠lock点接森,哎,那个呢,之后我会专门整理一些资料给大家单独去讲啊,只不过是你们应该是看到这个要质疑一下,诶我电脑为什么没有。好,那这这些呢,就是我们的用法,大家接下来诶没敲完的同学呢,要把这个默认暴露这个啊要整理一下,然后呢,一定要自己去理解一下它。
13:11
然后还有一个问题。我刚刚一直在强调,我们每一次是不是得重新每改一个东西,你想看效果,你都得重新先去转,再去打包编译啊,有没有觉得这样很烦啊,你这还是说我现在命令好像我有记忆功能,能记住我以前的命令,按上下键,如果说没有的话,你每次来手动输一个试试。是不是特别烦,效率特别低啊,一直在强调这个是让你们想让他,你们看到这个要感到反感啊。反改以后就是我明天我接下来要讲的就是自动化构建工具,可以帮助咱们去干这个活啊。那预知后事如何就下回分解了啊,因为那个我们是单独要讲一天,大家先把这个来敲一下。
我来说两句