问题标签 [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 回答
452 浏览

javascript - 使用 ionic2、Typescript、RollupJs、es2015 模块的 `lodash-es` 出现 TS 错误

我正在使用lodash新的ionic2@RC.0项目模板,其中包括

  • 打字稿
  • 卷起
  • es2015 模块

这对我有用:

但显然是因为摇树的事情而lodash-es被推荐的。Rollup但是当我这样做时:

我收到一个Typescript错误

error TS2307: Cannot find module 'lodash-es'.

但是,转译后的文件javascript实际上可以正常工作并正常运行。是什么赋予了?

这是我的tsconfig

0 投票
2 回答
449 浏览

javascript - 使用 rollupjs、es2015 模块导入

我正在使用rollupjs作为新ionic2@RC.0版本的一部分。该项目使用tsconfig.jsonwithcompilerOptions.module = "es2015"而不是,"commonjs"它对我来说是全新的。

import从汇总中收到此错误

导入文件看起来像这样

我可以将我的导入更改为

并且rollup没有抱怨,但angular2没有找到从导入的指令angular2-google-maps/core

我应该怎么办?

0 投票
1 回答
243 浏览

javascript - 如何创建 `d.ts` 文件以导入不是模块的外部 npm 库

我想使用一个不写成模块的 npm lib

npm install "js-marker-clusterer" --save

这会安装一个我想要的 JS 文件:

./node_modules/js-marker-clusterer/src/markerclusterer.js

我想在我的 TS 文件中扩展和使用这个类。根据 TS 文档,我可以声明 ashorthand ambient module来执行此操作,但我不确定将不同文件放在哪里。

速记环境模块

如果您不想在使用新模块之前花时间写出声明,您可以使用速记声明来快速开始。

declarations.d.ts (我把这个文件放在哪里?)

来自速记模块的所有导入都将具有 any 类型。

现在我有以下内容,但它不正确:

./src/app/shared/my-marker-clusterer.d.ts

/src/app/shared/my-marker-clusterer.ts

我正在使用rollupjs首选es2015模块

0 投票
0 回答
931 浏览

javascript - 汇总,不正确地摇树,提供完整的捆绑

我在使用rollup时遇到摇树问题。我从我的模块中导出了一个min基本上什么都不做的新函数。utils/index.js除了该文件之外,还有大量的导入和其他导出功能。当我捆绑时,我看到一个编译文件,其中包含我正在使用的每个外部模块以及所有导出的函数utils/index.js,我希望这些函数只是min捆绑包并且没有require语句。如何启用摇树?有没有我缺少的设置?

这是我的入口文件。

这是我的rollup.config.js文件。

0 投票
1 回答
2565 浏览

angular - Rollup 和 Redux:“index.js 不导出默认值”

我已将我的 ionic 应用程序从 beta 11 更新到 rc0。所以这意味着我已经从 angular2 rc4 切换到 angular2 stable,从 typescript 1.8 切换到 2 并使用 rollupjs 模块捆绑器。

我有一个 redux 架构,并且正在使用 Redux 库。

我无法编译并收到此错误:

错误:模块 c:\XXX\node_modules\redux\node_modules\symbol-observable\index.js 不导出默认值(由 c:\XXX\node_modules\redux\es\createStore.js 导入)

在 Module.trace (c:\XXX\node_modules\rollup\dist\rollup.js:7677:29)

在 ModuleScope.findDeclaration (c:\XXX\node_modules\rollup\dist\rollup.js:7300:22)

在 Scope.findDeclaration (c:\XXX\node_modules\rollup\dist\rollup.js:5351:39)

在 Scope.findDeclaration (c:\XXX\node_modules\rollup\dist\rollup.js:5351:39)

在 Identifier.bind (c:\XXX\node_modules\rollup\dist\rollup.js:6489:29)

在 c:\XXX\node_modules\rollup\dist\rollup.js:5151:50

在 MemberExpression.eachChild (c:\XXX\node_modules\rollup\dist\rollup.js:5168:5)

在 MemberExpression.bind (c:\XXX\node_modules\rollup\dist\rollup.js:5151:7)

在 MemberExpression.bind (c:\XXX\node_modules\rollup\dist\rollup.js:6693:24)

在 c:\XXX\node_modules\rollup\dist\rollup.js:5151:50

有人对发生的事情有任何想法吗?有人可以给我一些指示吗?我真的不明白如何处理这个问题。

这就是我在rollup.config.js中的内容

0 投票
2 回答
698 浏览

angular - immutable.js 不导出地图

我最近将我的 Ionic2 项目2.0.0-beta.112.0.0-rc.0. 我正在使用 Immutable.js(版本 ^3.8.1)。自更新以来,我在 Ionic Serve 命令期间遇到了以下错误:

我不知道是否需要在我的 app.module.ts 文件中添加一些内容。我可能想念一些东西。

谢谢。

0 投票
3 回答
932 浏览

angular - Firebase ionic2-rc0 和汇总 - “汇总:强烈建议不要使用 `eval`”

我已将我的 ionic 应用程序从 beta 11 更新到 rc0。所以这意味着我已经从 angular2 rc4 切换到 angular2 stable,从 typescript 1.8 切换到 2 并使用 rollupjs 模块捆绑器。

我已经根据这篇博文配置了 AngularFire2: Ionic 2 RC0、Firebase 3 + AngularFire 2 入门

我无法编译并收到此错误:

汇总:强烈建议不要使用 eval(在 c:\XXX\node_modules\angularfire2\node_modules\firebase\firebase.js 中),因为它会带来安全风险并可能导致缩小问题。 有关更多详细信息,请参阅 https://github.com/rollup/rollup/wiki/Troubleshooting#avoiding-eval

任何人都知道发生了什么以及如何解决这个问题?

0 投票
0 回答
432 浏览

bundle - Rollupjs 使用 typescript 装饰器模块进行 tree-shaking

当我在脚本中使用带有模块的 typescript 装饰器时,rollupjs 会捆绑整个模块而不是导入的模块。

main.js

index.js

显示.js

表单.js

formV 模块并未导入 main.js 文件中,但它也与输出文件捆绑在一起。

rollup.config.js

0 投票
1 回答
396 浏览

ionic-framework - 在 Ionic 2 RC.0 的每个构建中都删除了 index.html 中的自定义脚本标记

我正在重建我的 Ionic 2 应用程序以在 RC.0 中工作,但我遇到了 Charts.js 的问题。我正在使用运行良好的 ng2-chartjs2 模块,但它还需要 index.html 中包含的 Charts.js 2.0 库。我可以轻松地将脚本标签添加到 www/index.html - 它可以工作 - 但在每次构建时它都会消失。我认为这是因为汇总是在每个构建上重写 index.html 文件并删除脚本标记。

我怎样才能解决这个问题?我是否需要配置汇总构建阶段以包含 Chart.js 库?如果是这样,我该如何实现?

在此先感谢,菲尔

0 投票
2 回答
2067 浏览

javascript - Babel / Rollup 错误转译和捆绑 ES2017

我在将ES2017JavaScript(特别是async/await函数)转换为ES5使用 Rollup 和 Babel 时遇到错误:

使用 'babel' 插件转换 \src\index.js 时出错:选项 {"modules":false} 传递给不接受选项的 \node_modules\babel-preset-es2017\lib\index.js。

我的.babelrc文件:

自然,如果我将presetsfrom更改es2017es2015并注释掉async/await代码,错误就会消失。

请注意,虽然应用程序使用ES2017功能(即async/await),但它作为 NPM 包(作为ES6 (ES2015)模块)发布,随后被转译为 generic ES5 (ES2009)

我如何克服这个错误并让我ES2017愉快地转译到ES5?