V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
l0ng
V2EX  ›  JavaScript

有没有了解 npm 工作方式的大佬?

  •  
  •   l0ng · 2018-12-15 19:59:12 +08:00 · 3500 次点击
    这是一个创建于 2173 天前的主题,其中的信息可能已经有所发展或是发生改变。

    fork 了一个仓库,想改下源码适配项目使用,

    结果发现npm install的时候没有编译导致引用的时候报错,

    又去install源仓库,发现源仓库是编译了的,这个是什么原理?

    上面是通过我Fork的仓库install出来的,下面是源仓库install出来的:

    img

    按理说 es 和 lib 两个文件夹(已在项目.gitignore 里)是通过 build/build-lib.js 生成的,可是并没有看到 build 文件夹

    仓库地址是:vant

    9 条回复    2019-01-25 09:07:28 +08:00
    azh7138m
        1
    azh7138m  
       2018-12-15 20:05:35 +08:00 via Android
    npm run build:lib

    倒是读一下 package.json 啊。。
    wd
        2
    wd  
       2018-12-15 20:09:40 +08:00 via iPhone
    npm install 并不是从 github 下来的,其实是发布到存 npm 包的地方的时候会同时发布编译的结果,所以你下回来是有编译好的内容的
    l0ng
        3
    l0ng  
    OP
       2018-12-15 21:34:53 +08:00 via Android
    @azh7138m 大哥,这个我肯定看了啊,不然怎么知道那两个文件夹生成方式
    l0ng
        4
    l0ng  
    OP
       2018-12-15 21:36:04 +08:00 via Android
    @wd 谢大佬,所以我也要把修改后的包发布到 npm 上才能正常使用吗😭
    azh7138m
        5
    azh7138m  
       2018-12-15 21:36:42 +08:00 via Android
    @l0ng 你 fork 之后是怎么安装自己修改后的版本的
    npm install from git ?
    npm link ?
    l0ng
        6
    l0ng  
    OP
       2018-12-15 21:47:25 +08:00 via Android
    @azh7138m npm install https://github.com/F5F5/vant.git 这样子,我看了 install 下来的 packages 里代码是我修改过的,就是缺了一步编译
    azh7138m
        7
    azh7138m  
       2018-12-15 22:20:11 +08:00 via Android   ❤️ 1
    @l0ng 那你 git 不应该 ignore lib 目录
    wd
        8
    wd  
       2018-12-16 08:13:35 +08:00 via iPhone   ❤️ 1
    @l0ng #4 你只需要把编译后的 lib 提交到 git 就好了,存在的问题是没次改了代码都需要编译之后在提交
    ghostheaven
        9
    ghostheaven  
       2019-01-25 09:07:28 +08:00 via Android   ❤️ 1
    你可以自己在 github 上 release,然后用 release 里的地址作为 npm 安装包,我记得在哪里看到过这个办法
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3360 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 11:46 · PVG 19:46 · LAX 03:46 · JFK 06:46
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.