npm 这种辣鸡玩意儿浑身都充满了各种不合理,为何这么多年还没被取代?

2018-04-12 15:54:05 +08:00
 mokeyjay

甚至看不到 npm 官方有任何要改进的意思,例如抢包名的依旧在抢包名

我不禁陷入了沉思

是否意味着这届程序员不行(滑稽

10408 次点击
所在节点    Node.js
47 条回复
crysislinux
2018-04-12 16:03:27 +08:00
说明没啥好办法啊
muziki
2018-04-12 16:04:44 +08:00
yarn 试试?
mokeyjay
2018-04-12 16:07:20 +08:00
@crysislinux #1 解决方法有很多,但 npm 官方并不作为
@muziki #2 yarn 看起来是个好东西,不过似乎比较少看到有人用 /提起
bullettrain1433
2018-04-12 16:11:26 +08:00
yarn 啊
SakuraKuma
2018-04-12 16:11:48 +08:00
所以产生了 yarn。
然后 npm 又学起了 yarn。
可惜已经太晚了,很多人跑去 yarn 了。
huiyifyj
2018-04-12 16:12:05 +08:00
npm 占包名是没办法啦,但是没有像域名那样恶意,可是因为多了,有包名也没办法啊,就像你注册一个网站的昵称,被抢了也没办法啦。
所以你会发现现在越来越多的包以 @.../命名了。哎,这也没办法啊。
不过官方有时候确实不作为。
mokeyjay
2018-04-12 16:15:24 +08:00
@huiyifyj #6 并不是没办法,这个很好解决啊,前面加用户名不就好了。例如 php 的 composer 就是 “ github 用户名 /repo 名” 来作为包名的,完美解决冲突
huiyifyj
2018-04-12 16:17:49 +08:00
@mokeyjay #7 对啊,所以越来越多人以 @username/开头啊。
我觉得包名应该允许转移也好一点。
grewer
2018-04-12 16:27:43 +08:00
除了抢包名,楼主详细说下其他不合理的地方啊,光是一味地说垃圾是没用的
doubleflower
2018-04-12 16:52:57 +08:00
光瞎 bb 了哪个不合理你列几个出来?
mooo
2018-04-12 16:59:31 +08:00
@mokeyjay 现在好的都用 @了,比如新的 babel 就是用 @组织 /XXX 作为包名的。 用 github 用户名的话 npm 不一定要发布的 github 上吧。
Eoss
2018-04-12 17:32:44 +08:00
楼主具体列下哪些不合理呗。
没用过其他包管理工具。列一下学习学习。
superluckykoo
2018-04-12 17:39:38 +08:00
已转投 yarn,碰到过 npm 安装依赖包不全,或者新增依赖时删除了其他依赖包,主要是 rn 项目用 npm 出错概率比较大
qfdk
2018-04-12 18:16:04 +08:00
我感觉还好 目前为止没有碰到什么问题 这种还是靠谱的 别的就算了吧
SirLostWhite
2018-04-12 18:21:31 +08:00
第一次搞 npm 搞了一下午
结果转 yarn 半小时搞定
yarn 万岁!
mwVYYA6
2018-04-12 19:29:30 +08:00
@SirLostWhite 黑的漂亮
murmur
2018-04-12 19:34:12 +08:00
npm2 那个目录结构超级 sb
但是 npm3 改成了扁平目录结构
即便是在 windows 下也不太会出现问题了
既然没问题干嘛要换
wenbinwu
2018-04-12 20:37:44 +08:00
眼高手低,有意见提 issue 交 pr 去
rashawn
2018-04-12 21:01:45 +08:00
@mokeyjay 已经可以加了
bojackhorseman
2018-04-12 21:12:50 +08:00
充满了 what-the-fuck-is-this-plugin 的模块 2333

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/446255

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX