liuli-cli icon indicating copy to clipboard operation
liuli-cli copied to clipboard

「交流」关于不使用 babel 的疑问

Open qqqqqcy opened this issue 5 years ago • 1 comments

最近准备写一个自己的 cli 库,碰巧看到了 liuli-cli。我选的 typescript 同时发现没有 babel 选项,实质上你应该是通过 tsconfig 里配 target、lib 来转 syntax 和 api。

感觉很有意思也比较少见(至少我第一次见)的用法,所以想了解几个使用此方法之后可能会出现的问题

我实测了一下用得比较多的几个 api 比如 Promise、Array.includes 这些都会被保留。

虽然一般情况下都可以通过在项目中使用 useBuiltIns:'entry' 来解决这些 api 的兼容问题,但是也导致用户无法使用更智能的 useBuiltIns:'usage'。或者更极端情况如果用户直接通过 script 引用你的库,更是一定会有兼容问题

所以想了解一下你是怎么考虑这一块的

qqqqqcy avatar Aug 25 '20 11:08 qqqqqcy

最近准备写一个自己的 cli 库,碰巧看到了 liuli-cli。我选的 typescript 同时发现没有 babel 选项,实质上你应该是通过 tsconfig 里配 target、lib 来转 syntax 和 api。

感觉很有意思也比较少见(至少我第一次见)的用法,所以想了解几个使用此方法之后可能会出现的问题

我实测了一下用得比较多的几个 api 比如 Promise、Array.includes 这些都会被保留。

虽然一般情况下都可以通过在项目中使用 useBuiltIns:'entry' 来解决这些 api 的兼容问题,但是也导致用户无法使用更智能的 useBuiltIns:'usage'。或者更极端情况如果用户直接通过 script 引用你的库,更是一定会有兼容问题

所以想了解一下你是怎么考虑这一块的

  1. 使用 ts 之后大概率不需要使用 babel 二次编译了,除非你要用非常新的特性(吾辈个人不建议)
  2. 打包多种模块默认支持 es/umd,所以对于你说的直接通过 script 直接引入也是支持的(另外 babel 的配置吾辈并不熟)

rxliuli avatar Aug 25 '20 11:08 rxliuli