V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
medmin
V2EX  ›  Node.js

到底用哪个包管理器啊?

  •  
  •   medmin · 2017-11-29 13:18:32 +08:00 · 5065 次点击
    这是一个创建于 2580 天前的主题,其中的信息可能已经有所发展或是发生改变。
    好吧,我今天才发现 bower 竟然停止运营了
    一直用 npm 和 bower
    据说 bower 是专门管前端静态资源的

    考察了一圈,yarn 是试图取代 npm,但我为啥要弃用 npm ?没理由啊。

    我只需要一个专门管理类似 bootstrap 这样的 ui 库的一个包管理器,小项目而已

    据说 Browserify 可以和 npm 搭配使用

    有类似 bower 的么?可以把 css 库安装在一个专门的 public 或者 static 目录里

    谢过。。。。
    16 条回复    2017-12-09 23:31:59 +08:00
    wxsm
        1
    wxsm  
       2017-11-29 13:49:07 +08:00   ❤️ 2
    bower 的存在本身就是没什么必要的。因为它能做的事情 npm 都能做,没有了 bower 你同样可以在 npm 下载 bootstrap,并从中引用你需要的 CSS。如果使用 bower 只是因为它可以帮你安装到 public 或 static 目录,那这个理由未免太牵强了,现在已经不比以往,我们可以用 webpack 来管理所有前端资源,从加载到发布。很显然 bower 也意识到了这个问题,发现自己在前端发展的道路上已经不太具有突出的价值。

    至于 yarn,它解决了老版本 npm 中存在的一些显著问题,如安装版本经常不一致,安装速度太慢等等。但是如今随着 npm 的更新,它的优势也没有以往明显了。

    所以综上来说,用 npm 就够了。
    saran
        2
    saran  
       2017-11-29 13:50:12 +08:00 via Android
    反正我只知道 npm 拖家带口……
    coolcoffee
        3
    coolcoffee  
       2017-11-29 15:18:02 +08:00
    yarn 和 npm 是同一个东西, 在 yarn 没出来之前,npm 的安装依赖速度跟蜗牛一样, 每次安装都必须等那么长时间。后来 yarn 支持版本锁定,一次安装,第二次同版本的几秒钟就完成了。

    现在 npm 新版本安装速度也还可以,比以前快多了。
    usedname
        4
    usedname  
       2017-11-29 18:40:52 +08:00
    yarn 是并行的,你没看到下载下的飞起。。。另外就是带了版本锁定
    medmin
        5
    medmin  
    OP
       2017-11-30 02:46:25 +08:00
    @coolcoffee
    @usedname
    npm 的 package.json 也有版本锁定了吧,和 php 里的 composer 差不多,还行啊。
    medmin
        6
    medmin  
    OP
       2017-11-30 02:51:51 +08:00
    @wxsm 那请问现在是怎样用 npm 这一个包管理器把前后端资源分别管理呢?
    我现在小项目真没必要用 webpack
    哎,js 太多新东西,每天都有新东西,真是有点搞不懂。
    我就一个后端程序员,用 nodejs 写写小玩意,结果搞出这么一堆事来。

    能否介绍一种类似 bower 的包管理器或者方法,总之,前后端的包分开,毕竟后端开发需要 require,前端是把资源放在 html 模板里。

    至于 webpack,真没心情搞。
    不是懒,而是说,这玩意对我目前的小网站没有任何收益。
    我已经过了为了学习新东西而学的阶段了。
    用什么工具,还是看是否有收益。

    求赐教。
    NemoAlex
        7
    NemoAlex  
       2017-11-30 03:19:36 +08:00
    不想学就不能用。
    抱歉。
    beginor
        8
    beginor  
       2017-11-30 08:23:22 +08:00 via Android
    前端资源放到 package.json 的 dependency 节点,后端资源 devDependency。
    wxsm
        9
    wxsm  
       2017-11-30 08:33:51 +08:00 via iPhone
    @medmin 使用 npm 无法将前后端资源分开。你这种情况大可以直接使用各种免费的 cdn,没必要纠结在一定要下载到本地。如 unpkg.com ,bootcdn 等。
    usedname
        10
    usedname  
       2017-11-30 10:16:36 +08:00
    @medmin #5 package.json 只是指明了版本,没有锁定版本。composer 不是还有个 composer.lock 吗 对应 yarn.lock
    sxd
        11
    sxd  
       2017-11-30 10:34:40 +08:00
    @usedname #10 package-lock.json npm5+
    hasbug
        12
    hasbug  
       2017-11-30 10:52:05 +08:00
    node,你不用 npm 用其他的干什么呢?
    usedname
        13
    usedname  
       2017-11-30 11:04:18 +08:00
    @sxd #11 不知道,node 迭代太快,更不上节奏 😓
    alsotang
        14
    alsotang  
       2017-11-30 11:45:35 +08:00
    对于新手来说,只用 npm。忘掉 bower 和 yarn
    medmin
        15
    medmin  
    OP
       2017-11-30 14:02:01 +08:00
    @alsotang 好的大佬,本人是新手。
    JeffWong
        16
    JeffWong  
       2017-12-09 23:31:59 +08:00
    一个 npm 就足够了。 技术栈的选择有时候没必要太纠结, 当你发现当前的工具确实不能够支持你的开发的时候,再考虑使用其他工具。当你都到这种程度了,换个工具轻而易举。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1086 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 23:30 · PVG 07:30 · LAX 15:30 · JFK 18:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.