问题标签 [rollupjs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1146 浏览

javascript - 使用带有 Rollup 的节点模块构建 Web 客户端

我正在尝试使用汇总而不是 browserify 和 babel 构建一个反应应用程序。我意识到我需要使用rollup-plugin-babel来转换 jsx,但是当我告诉 rollup 格式为iife时,最终页面加载时出现错误:

Uncaught ReferenceError: React is not defined

我需要添加什么以包含我在最终构建中rollup.config.js安装的节点模块?package.json

0 投票
1 回答
517 浏览

javascript - 在业力预处理器中将文件添加到监视列表

这是为演示该问题而创建的存储库:

briamhunt/karma-rollup-preprocessor-issue-3

我正在尝试让 karma-rollup-preprocessor 与 Karma 的内置手表一起使用,即解决showpad/karma-rollup-preprocessor#3

换句话说,在预处理器中,我想将文件添加到 Karma 的监视列表中。

很容易获得 Rollup 用于编译的文件列表。Rollup 返回它读取的文件列表(一个想要观看的文件),所以在预处理器中我试图将文件添加到列表 karma 手表。

基本上我想将这个(或等效的)添加到预处理器中:

filesKarma'sconfig.filesfileList任何需要放置正在观看的文件的地方在哪里。

使用 执行上述config.files操作,文件确实被添加到观察者中,.on(fileList.changeFile)_isIncluded.

所以看起来文件也(或替代地)必须添加到fileList.

不幸的是,当我尝试添加 时fileList$inject我收到错误:

错误:无法解决循环依赖!(解决:预处理 -> 预处理器:汇总 -> 文件列表 -> 预处理)。

我基本上查看了所有其他看起来也可以添加包含的预处理器,但我没有发现如何去做。

有没有一种规范的方法来添加 Karma 应该从预处理器中观看的文件?或者其他人怎么可能做到这一点?这对于 Karma 中的预处理器来说似乎非常重要,因此令人惊讶的是,它在其他预处理器中没有记录、不明显或有问题。

编辑 这里还有一些尝试:

我试图将观察到的模式添加到config.filesin karma.confie

但是src/*更改时不会重新编译。测试只是重新运行。

所以我尝试了这样的chokidar:

我还尝试了去抖动,以防 Karma 刷新速度较慢,但​​似乎测试不会重新运行。

我扎根于 karma-browserify 寻找灵感,但如果不深入研究,它有点太复杂了。

0 投票
0 回答
992 浏览

rxjs5 - 使用汇总捆绑仅使用的 RxJS 模块

我正在尝试将一个项目与依赖于 RxJS (v5) 的汇总捆绑在一起。我想要的是汇总到 tree-shake 并且只包含我正在使用的 RxJS 模块。

我想我已经接近了,但它从以下位置离开system-observable

示例 repo 在这里

我目前正在使用npm i rxjs-es,我知道还有其他 rxjs 安装,但我假设那是正确的。

这是我目前正在做的事情:

更新:如果我将 RxJS 的唯一依赖项重写symbol-observable为 ES6 模块,那么它可以工作。

我的问题是:

  • 汇总(和一些插件/配置)是否应该处理转换以获取 CJS 依赖项?还是应该做一个 PR 来symbol-observable制作 es6?
  • 是否需要自定义插件来重写rxjs-es导入路径?或者是否有现有的插件或配置可以做到这一点?

更新 2:看起来symbol-observable大约一周前已经这样做了,但是 npm 正在安装旧版本。( https://github.com/ReactiveX/rxjs/issues/1785 )

0 投票
1 回答
1439 浏览

javascript - 使用 uglify 保持 javascript 包文件美化

我正在使用rollup-plugin-uglify汇总,我得到了我的 JS 包的开发和生产版本,我想要开发模式。尽管我正在使用 uglify,但请保持我的文件美化

我尝试将其指定如下(在开发版本中):

我正在使用rollup-plugin-uglify汇总我得到了我的 js 包的开发和生产版本,我希望在开发模式下保持我的文件美化,尽管我正在使用 uglify

但不幸的是,文件输出仍然丑陋。

任何想法?

0 投票
1 回答
280 浏览

javascript - 如何使用汇总导入某些内容

riot-mixin-pack通过在代码顶部使用此行,我成功地使用了汇总:

卷起时domEventparentScope对象包含在我的文件顶部。

我想用一种或两种支持的语言导入highlight.js输入我的汇总文件,但我似乎无法弄清楚import我需要的行。

有什么办法可以做到这一点?

0 投票
0 回答
140 浏览

angular - 汇总 Angular2 类错误(InjectMetadata)

我使用标准 tsc (v1.8.10) 编译和 Rollup.js (v0.34.3) 捆绑 Angular 2 应用程序,但执行时出现以下错误:

堆栈跟踪的其余部分似乎通过依赖注入器:

具体来说,我对 Angular2 还是很陌生。

0 投票
0 回答
120 浏览

angular - Angular2 RC4 构建时出现摇树运行时错误

根据这篇文章,我尝试使用摇树构建我的测试应用程序。 http://blog.mgechev.com/2016/06/26/tree-shaking-angular2-production-build-rollup-javascript/

构建脚本运行正常,但是当我使用 bundle.js 时出现运行时错误。

Observable$1.from 来自 dist\bundle.es2015.js

这个函数起源于

当我使用汇总生成 dist\bundle.es2015.js

如果我通过 browserify-js 构建应用程序而没有摇树,那么这个函数会显示为 Observable_1.from() 并且应用程序可以正常工作。

我认为可能是 Angular2 zone.js 对 Observable$1 过敏所以我手动将 bundle.es2015.js 中的所有 Observable$1 更改为 Observable_1 然后运行

然后我得到了这个

谁能告诉我这是由于汇总错误还是我错过了什么?

这是构建脚本

rollup.config.js 和 tsconfig.json 与上面的链接相同。

0 投票
1 回答
155 浏览

angular - 来自 angular2-material 输入模块的汇总错误

我在这里学习教程http://blog.mgechev.com/2016/06/26/tree-shaking-angular2-production-build-rollup-javascript/

当我尝试运行汇总时,出现此错误。模块 /Users/gordon/workspace/CraigsMenu/craigsmenu-web/node_modules/@angular2-material/input/input.js 不导出 MdInputModule(由 /Users/gordon/workspace/CraigsMenu/craigsmenu-web/dist/app 导入。模块.js)

我不确定是哪件事导致了这个问题。angular2 材质输入是否可能没有正确支持 es2015 并且仍然是 commonjs 模块?

任何事情都有帮助。提前致谢!

0 投票
1 回答
3229 浏览

javascript - 使用 CommonJS 模块汇总导出未命名函数作为模块?

我有一个名为 的 CommonJS 模块,inner.js它定义了一个函数,然后将该函数导出为整个模块:

在 Node 中,我可以很容易地验证它是否按原样工作。

但这是我想从 ES6 模块中使用的遗留模块,称为outer.js

我看到这在这些情况下很常用,但是当 CommonJS模块将函数导出为整个模块rollup-plugin-commonjs时,我无法让它工作。inner.js如果在运行汇总并将结果转储到 之后loadme.js,我尝试运行加载 ES6 外部模块并尝试调用内部 CommonJS 模块中最初定义的函数,我会收到错误消息:

我想我只是未能正确加载 CommonJS 模块,以使模块本身作为一个函数运行。我对 UMD 不够熟悉,无法从检查汇总输出中获得任何有意义的东西。

这篇文章的其余部分是关于一个最小的例子。


这是我的非常简单的index.js

这是由我的汇总配置读取的:

我有一个完整的可克隆存储库来演示该问题。

0 投票
1 回答
2308 浏览

rollupjs - 为什么汇总将我的代码视为“外部依赖”?

我正在学习在这个项目中使用汇总

做的时候:

我的输出只有入口点,而不是从中导入的文件。为什么会这样?

详细信息可在 repo 中找到(上面的链接)。