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

关于 esbuild 的一个以问题: golang 是怎么编译为 npm 库的?

  •  
  •   ericgui · 2020-07-16 11:11:09 +08:00 · 2535 次点击
    这是一个创建于 1372 天前的主题,其中的信息可能已经有所发展或是发生改变。

    今天研究 esbuild,发现这个库是用 golang 写的,但你可以用 npm install esbuild

    这就很奇怪了

    我搜了半天,没搜到怎么用 golang 来写一个 npm 的库

    各位能指点一二吗?

    3 条回复    2020-09-14 16:31:07 +08:00
    seki
        1
    seki  
       2020-07-16 11:15:33 +08:00
    postinstall 下载预编译好的二进制程序
    noe132
        2
    noe132  
       2020-07-16 11:20:06 +08:00
    go 编译成 native,npm install 时下载对应平台的 native 运行。jsapi 相当于对 native 的封装。

    除了这种,C/C++的程序可以用 n-api 做 binding 。通常下载完后需要在本地编译 C/C++ 代码
    zzk1989
        3
    zzk1989  
       2020-09-14 16:31:07 +08:00
    用 n-api 或者 node-ffi 都很麻烦,还需要 c++
    esbuild 是直接用 child_process 调用命令行程序
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2725 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 00:21 · PVG 08:21 · LAX 17:21 · JFK 20:21
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.