00:00
Repair是咱们写好的,Work呢是我们需要敲的,然后下面大家看一下这是不是有个教程笔记啊?哎,这里面每一个都有,我们到时候跟着这个教程来就OK,好先把这个收起来,我们先来看第一个吧,Model模块化。啊,可能刚才说大家理解不了,咱们来整一个我一个index,哎,都是外接的这个JS文件,这没问题吧,相当于现在是它就是一个模块,最早我们写代码就是这样,上来方式叫O,那这个时候。你比如说我去o log一个fo调用,然后再来一个吧,我在这去let个message,等于个你比如说MODU1,哎,那这个时候我是不是可以连它打印出来啊好,甚至有可能你继续开发,哎,你在这继续去定义,比如说我这来个二调用,你说你也把这个message输出。这是不是都没问题啊,那我这个ST一旦引入了这个GS文件,我是不能直接在那去用。
01:07
因为你们是在全局定义的,所以我上来fo。87分的掉吗?那这个时候如果说你不知道你开发的周期长了,哎,你根本不知道你前两个星期还定义过这个message属性。你忘了,那这个时候是不是有可能我再去写个message,等于一个,比如说换一个吧,现在我再去调用Mo,你说有什么问题。那个是不是会变。这没问题吧?啊,那这样的话呢,就是说容易造成命名出错,我现在这个把之前的给污染了。好,那接下来我们又说一个叫namespace命名空间模式,命名空间模式是什么意思呢?上来他不管三七二十一,我是不是先去给他整一个。
02:03
对,那么对象里面,我很有可能这一把把所有的数据哎放到这了,我说我现在全局的变量肯定是变少了。现在我这样写,大家能习惯吗?这我是不是都是用的ES6的这种截写方式啊,好截写方式,那这个时候我去consolo一个,你比如说这把fo调用,我要输出这个message,我能直接这样写吗。可以吧?我想出出这个message。你现在是要找到对象里面的message吧?我如果说直接写message是问群里要的,所以这个时候我们应该是点message。为什么release呢?因为你fo这个方法最终肯定是通过OB间来调用。有没有问题,没有问题,那我们来到这儿来看一下,首先我OB阶段fo调用肯定是没问题的。
03:06
但是呢,我OB接点message,我能不能拿到这个message数据。同理,我是不是还能去修改它,然后OB接段我们再去调用一把看一下。就很明显还是会修改它,因为对象里面的数据不是我能去操作,它不安全。那接下来晋升就是什么r fe了,R fe,哎,大家写应该是都没问题,立即执行函数,好,那在这里边我去let一个message,你不要这一把我说就解了三好,然后来一个对。来一个什么呀,Function Mo,我去cons,比如说这一晚上Mo调用,然后呢,打印一下这个message,这没问题吧。那这个时候我问一下大家,我在这能不能直接去Mo调用。
04:05
行不行?能。我,你想你,我现在的Mo在哪?是不是在我函数内部啊,那我的数据你从外面是看不进去的。想要在外边调用它怎么办?或者说我问下来,我们去修改。就这样吧,这个好设,你比如说我,我的意思是想要哎攻击他,我直接在这写个message,我问你我能不能修改了。这个。能不能修改你你去。这个message可能有人这样讲一看,哎呀,我我修改了它了,你说你修改了吗。你修改了吗?你这个相当于是在window上给window是不是定义了一个属性,就叫message,你可以找一下它这个属性。
05:03
呃,往下翻一下。看到这没有?你相当于直接给window添加了一个属性。再看一个东西,内容这个东西可能有同学到现在都不理解。之前应该是给大家强调过,你们在全局去定义变量的时候,不要定义内蒙。因为什么window原本有个内部属性。你最好不要去动人家window里面的东西。那这个name记住了,它默认是不为空串,哎,这个这一把我们看到了啊。好,那这个时候你想要去调用这个fo的话,大家说应该怎么办呢?我在这刷新一下,他说fo是吧,Notify。我想要直接调用它怎么办?现在的问题就是,它是不是就是一个实实在在的模块。而人家内部的数据是不是私有的,想要和外边通信的话,你是不是得暴露出来。
06:05
如何去暴露呢?就用杰克瑞那种思想。其实我不传,我在这直接写个window,我是不是也能去暴露,比如说MODU3。等于。我还是要这样写,我就看大家能不能看懂。我相当于是给全局window这个对象上添加了一个属性,这个属性是一个对象,对象里面有个方法叫fo,可能一下写理解不了。这个fo相当于我是不是给这个对象里面定一个属性啊,而这个值是什么,我用的是这个值。能理解吗?这个一定要能看到,之后你们会经常看到这样写,看别人的东西,它也是这样。爸,能不能走这?好,能走的话,因为同名的属性是不是可以省略不写啊,所以咔咔就上来这样整了。
07:07
但是呢,这样能是能行,我们写的规范一点,是不是应该是这样,你去声明一个行参注入一个13啊,那这个时候我们来看啊。你这一把能用直接调用吗?不能,我说暴露出来是MODU3这的对象,所以这一把应该是modu3.fo调用,能不能懂?来看一把,走你。是不是没问题啊好,那这呢就是一个啊模块的一个基本的概念,那接下来我们再来讲第四个是r fe。那首先上来你怎么写,不管你这是你内部私有的数据啊,还是1MESSAGE这一把我们来个MODU4,那接下来我还是整一个function,一个Apple啊好这一把conslo这个比如说。
08:07
Moo调用。然后呢,我是不是有可能把这个message输出这个时候啊,比如说你现在暴露你是会你比如传个window,我这是不是得去声明一个,接着问到底儿,哎,毛四。等于我就来回切换着些,让大家都熟悉了我这把游戏暴露了什么。相当于window里面添加的首先叫MO4,而它是一个函数。这样是我最好理解。但是你不要老想着好理解的东西,你要直接能绕过来,哎,以后看什么都没问题。好,这第一步来我们来看一下,到我们当前TEST4,我呢先把CLOSE2把其他的关掉,咱们打开这个,那现在我要去打印那个东西,我如何去调用呢。
09:07
哎,你看他还挺聪明的啊,看到这没有。四是不是应该是直接调用啊来打开。检查走,你是不是出来了,好,现在给你提一个要求,你给我把当前的这个页面添加一个背景色。那这个时候我们有可能要用到减宽瑞,首先你用解的话,这个加号是不是必须要引用啊。你若没问题,然后接下来。我很有可能就在那儿整了。那这个时候我们的思想依赖于解剖人,你是不是也应该注入进来?注意,现在不注入也行,因为在全局是不能看到这个Dollar佛,我为什么要现在开始要依赖注入,是因为你现在是全局的对象,如果说不是全局的,你肯定要依赖出路。
10:00
所以呢,我们要习惯这种方式,那在这儿解剖全局,是不是有个这个对象。这是注入的食参对着你得身为一个行参,而行参的话,我们通常是不会去用刀佛,用起来方便吗?好在这来一个body body是拿到它的,来,来一个背景色。然后在这,哎,Background来一个。软的吧,找你。这是不是就出来了,哎,好。那这就是r fe的增强模式引入依赖,而这种思想就是我们模块化的一个基础。好,第五个我们来看一下,不需要大家去敲啊,这呢,这些问题也给大家列出来了,就是你比如说我再复制一份啊。你开发完了,你页面有这么多GS文件。这么多GS文件,而比如说我这个文件啊,这个文件,这个文件是这样的啊。
11:06
它依赖于它里边的一个东西,它呢依赖于它里边的一个东西,问一下大家,这三个顺序能不能换过来。到现在我们应该是能能懂这些,肯定不能换,如果说换了的话,必然会报错。啊,这是带来的问题,而针对这些问题,就是我们接下来要学的如何去解决它,利用模块化规范。来我呢,先把这个停一下,大家先把这个。
我来说两句