为什么现在很多js库都不提供js文件来直接引入,而是通过npm安装的形式?

从前端开发到底层理解:为什么现在的JS库都要用npm

现在的JS库,就像是乐高积木。如果用传统方式(直接引入js文件),就相当于买了个乐高成品摆在那儿 —— 好看是好看,但你别想改动分毫。而npm这种方式,就像是给你一堆散装的积木,让你自由发挥。

"但是我就写个简单的页面啊,用不着这么折腾吧?"

等等,先别急着下定论,来看看这些问题:

1. 为什么现在都用npm?

记得以前写页面,为了引入一个jQuery,要把整个巨无霸js文件都塞进去。那感觉,就像是你去便利店买个泡面,人家非要连锅带灶台一起卖给你...

用npm最大的好处是啥?按需引入!

比如你就想用lodash的map函数:

// 以前的方式:引入整个lodash库(几百KB)
<script src="lodash.js"></script>

// 现在的方式:只引入需要的函数(几KB)
import { map } from 'lodash/map'

2. "但我不会node啊!"

其实吧,现在不会node的前端,就像是不会用筷子的中国人 —— 虽然用叉子也能吃饭,但...你确定你要这么干?

不过我懂你的痛点!来,给你三个偷懒的方案:

CDN(最简单)

html
Copy
<script src="https://unpkg.com/vue@3"></script>

用在线Playground(适合学习)

  • CodePen
  • JSFiddle
  • CodeSandbox

Deno(新选择) 直接在浏览器中用ES模块,不需要npm

3. 真相是...

说实话,这种变化是时代的产物。就像现在没人再用"记事本"写代码一样,用npm管理依赖,已经成了前端开发的标配。

为啥?因为现代前端工程化不是一个人的战斗:

  • 要考虑团队协作
  • 要考虑代码复用
  • 要考虑打包优化
  • 要考虑...(此处省略1万字)

最后最后

如果你就是想写个简单的页面,完全可以继续用传统方式。但如果你想往前端开发这条路走下去,npm这个坎,迟早要过。

就像我朋友说的:"不会npm的前端,就像不会开车的司机,虽然你可以一直坐地铁...但你确定要这样过一辈子?"


如果你觉得这篇文章对你有帮助,求求点赞关注,我是旷野,探索无尽技术!

对了,如果有人问你为什么要用npm,你就把这篇文章甩给他(手动狗头)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值