资讯专栏INFORMATION COLUMN

预告:JavaScript模块全览

focusj / 3006人阅读

摘要:之前写的文章急速全栈教程得到了不错的阅读量,霸屏掘金头条天,点赞过千,阅读近万,甚至还有人在评论区打广告,可见也是一个小小的生态了。今天看到的霸屏的,也是讲全栈的,见参考文章接下来要写的是模块。全局命名污染和命名冲突依赖管理。

之前写的文章急速Js全栈教程得到了不错的阅读量,霸屏掘金头条3天,点赞过千,阅读近万,甚至还有人在评论区打广告,可见也是一个小小的生态了;)。看来和JS全栈有关的内容,还是有人颇有兴趣的。今天看到的霸屏的,也是讲全栈的,见参考文章7

接下来要写的是模块。JavaScript Module 真是很讨厌,但是不得不了解的话题。奇葩在于:

它一个非常老的语言,并且使用非常广泛

可是它很多年来也不支持模块。这得厂家当前是多大的心呢

再一个可是,它可以直接用现有的语言机制,实现自己的模块,这个就厉害了,因为它释放了社区的力量。事实证明,社区果然不可小看,这个年代,蚂蚁雄兵胜过大象的

再再一个但是,它的模块还可以有很多型的,这说的是分裂

这么多型的模块,还搞了各自独立的标准出来,这说的是整合

最近的ES2017,终于在前端也有了媲美后端的模块,但是大家并不准备把它用起来,很多人表示需要继续Webpack玩转ES6模块。

把ES6模块真用的起来,可以不在乎Webpack等打包工具带来的加载优化,各种小文件不必打包这点来说,我看还得加上HTTP/2的配合就好很多了。这也是文章将要介绍的一个主旨吧。ES6模块的引入,确实有可能对当前主流的打包模式有些影响,参考文章6内有所论述

文章自然也不少,但是写作此文的理由还是存在:

我还没有看到一个完整的全览,并且结合HTTP/2的更加没有看到。

而且,在我看来,即使有了ES6模块,也得了解和学习之前拼出来的各种模块,因为社区内的代码还大量的使用这样的模块,其中的一些设计模式,比如IIFE,也是值得一看的。

看到JS社区的热情和推动力,相信JS发展的未来是美好的

参考文章不少,其中模块历史和选型如下:

前端模块化开发那点历史

梳理的还是比较清晰

有点黑客精神的小伙伴,玩的很广谱

介绍Bower

npm for Beginners: A Guide for Front-end Developers

Es6module 出来了,是否应该重新考虑打包的方案?

前后端分离 Vue + NodeJS(Koa) + MongoDB,从产品到开发,全栈实践没有看过的,不妨去看看。

提到模块,也不得不提到各种模块依赖管理工具,也还有前端工程化的内容。一个前端组件,却常常提到可以使用npm安装此组件,可是npm是后端的nodejs领域的东西啊,所以,这样的提法是有些令人困惑的。比如为什么NPM作为后端模块的管理工具,前端也在使用它,有什么优点和缺点,可以在这里了解显示情况:npm、bower、jamjs 等包管理器,哪个比较好用?,还有这里npm and the front end,NPM官方也对npm在前端的使用,提出了自己的看法,捎带着,也有前端自动化,搜索词是 why a front end component install by npm,对于喜欢Google发现的人来说,这类词很有用 。

未来的文章的内容纲要:

最古老的模块加载

阅读需要支付1元查看
<