Javascript 可以用闭包代替webpack和rollupjs吗?

Javascript 可以用闭包代替webpack和rollupjs吗?,javascript,typescript,webpack,google-closure-compiler,rollupjs,Javascript,Typescript,Webpack,Google Closure Compiler,Rollupjs,我计划为使用节点流API的浏览器发布一个用typescript编写的库。IIUC我应该将其编译为ES6模块,提供ES6导出,并通过package.json将其公开为module:index.js,作为关闭的理想目标 是这样吗?那么,是否可以使用闭包编译器代替webpack和rollupjs 因此,最终目标是: 1) npm安装软件包 2) 从包中导入{1-function-out-of-10-functions} 3) 贯穿闭包构建 Done现在可以在浏览器中使用了(而且比webpack和rol

我计划为使用节点流API的浏览器发布一个用typescript编写的库。IIUC我应该将其编译为ES6模块,提供ES6导出,并通过
package.json
将其公开为
module:index.js
,作为关闭的理想目标

是这样吗?那么,是否可以使用闭包编译器代替webpack和rollupjs

因此,最终目标是:

1)
npm安装软件包

2) 从包中导入{1-function-out-of-10-functions}

3) 贯穿闭包构建


Done现在可以在浏览器中使用了(而且比webpack和rollupjs提供的功能更优化)

正文中的问题似乎与标题有所不同。您基本上是在问如何将从Typescript编译的ES6模块打包为可以发布的NPM模块,该模块在浏览器中运行?如果这是您的问题,典型的做法是提供一个模块,您可以从节点
导入
require()
(因此可以进行浏览、网页打包、汇总、关闭),以及一个缩小/优化的环境
.js
,它可以创建库的环境定义,如果这对您的库有意义的话。这两个包可以是单独的NPM包。根据我所读到的,似乎闭包将创建最紧凑/优化的包。因此,如果我将typescript编译为es6(同时依赖于一些节点API),那么让它在浏览器中运行所需的全部都是闭包吗(或者webpack和rollup也是必要的吗?)?我知道支持多个bundler很好,但我只是想找出支持closure ATM的最低要求,以及closure是否是所需的全部。要让它在浏览器中运行,需要做的主要事情是解决所有那些
import
语句(或
require()
调用),浏览器不支持的。Closure、Webpack、Browserify和Rollup都可以做到这一点。如果你真的想支持Closure,最好提供Closure类型的注释,这与TypeScript注释有点多余,所以这是一点额外的工作。Closure提供了相对较小的改进,例如Uglify t这些天,你必须弄清楚这些额外的工作(注释)是否值得。但主要的两种方法仍然是一样的。你可以提供一个节点模块,人们可以
导入
require()
,然后他们负责进行优化(例如闭包、丑陋)和解析导入。您可以提供一个预优化、打包的
.js
文件。许多软件包都提供了这两个文件,让用户可以选择其中一个。好的-我想我开始了解大局了…我真的希望保持简单…看起来WebPack也会进行树震动,所以es2015模块导入/导出,WebPack,丑陋似乎是最简单的方式…感谢所有的反馈。。。