以下为《05-前端模块化ppt》的无排版文字预览,完整内容请下载
模块化开发王某某
微博:coderwhy
微信:***6JavaScript原始功能在网页开发的早期,js制作作为一种脚本语言,做一些简单的表单验证或动画实现等,那个时候代码还是很少的。
那个时候的代码是怎么写的呢?直接将代码写在标签中即可
随着ajax异步请求的出现,慢慢形成了前后端的分离
客户端需要完成的事情越来越多,代码量也是与日俱增。
为了应对代码量的剧增,我们通常会将代码组织在多个js文件中,进行维护。
但是这种维护方式,依然不能避免一些灾难性的问题。
比如全局变量同名问题:看右边的例子
另外,这种代码的编写方式对js文件的依赖顺序几乎是强制性的
但是当js文件过多,比如有几十个的时候,弄清楚它们的顺序是一件比较同时的事情。
而且即使你弄清楚顺序了,也不能避免上面出现的这种尴尬问题的发生。
小明后来发现代码不能正常运行,去检查自己的变量,发现确实true
最后杯具发生了,小明加班到2点还是没有找到问题出在哪里(所以,某些加班真的是无意义的)匿名函数的解决方案我们可以使用匿名函数来解决方面的重名问题
在aaa.js文件中 内容过长,仅展示头部和尾部部分文字预览,全文请查看图片预览。 于导出变量,比如下面的代码:
上面的代码还有另外一种写法:导出函数或类上面我们主要是输出变量,也可以输出函数或者输出类
上面的代码也可以写成这种形式:export default某些情况下,一个模块中包含某个的功能,我们并不希望给这个功能命名,而且让导入者可以自己来命名
这个时候就可以使用export default
我们来到main.js中,这样使用就可以了
这里的myFunc是我自己命名的,你可以根据需要命名它对应的名字
另外,需要注意:
export default在同一个模块中,不允许同时存在多个。
import使用我们使用export指令导出了模块对外提供的接口,下面我们就可以通过import命令来加载对应的这个模块了
首先,我们需要在HTML代码中引入两个js文件,并且类型需要设置为module
import指令用于导入模块中的内容,比如main.js的代码
如果我们希望某个模块中所有的信息都导入,一个个导入显然有些麻烦:
通过*可以导入模块中所有的export变量
但是通常情况下我们需要给*起一个别名,方便后续的使用
[文章尾部最后300字内容到此结束,中间部分内容请查看底下的图片预览]请点击下方选择您需要的文档下载。
以上为《05-前端模块化ppt》的无排版文字预览,完整内容请下载
05-前端模块化ppt由用户“cmhcmhfzu”分享发布,转载请注明出处