handsontable numbro 库中的错误,仅在生产构建中发生
Error in handsontable numbro library, which happens only in production build
向我的可操作实例添加一行时出现以下错误:
core.js.pre-build-optimizer.js:15724 ERROR RangeError: toFixed() digits argument must be between 0 and 100
at Number.toFixed ()
at h (numbro.min.js.pre-build-optimizer.js:1)
at numbro.min.js.pre-build-optimizer.js:1
完整错误:
奇怪的是,我只在 ng build -prod
(或 --optimization
标志)上得到这个错误。
因此使用调试器很棘手,因为 js 已经编译,但是使用 console.log()
我将它缩小到这个可操作的调用:
hot.alter('insert_row');
在阅读了这个可动手操作的 compilation issue 之后,我正在重构项目以在 tsconfig.json
中启用 strict:true
,但事实证明这是相当多的工作。
有没有人遇到过类似的问题?
版本:
- Angular 7.2
- Handsontable 7.0.0(但问题也出现在 v6 中)
- 打字稿 3.2.4
我没有在我的代码中的任何地方使用 numbro
库,它纯粹是 handsontable
的依赖项(我的项目中也没有其他库使用它)。
你是对的,它与 Handsontable 版本无关。 v2.1.2
中的依赖项之一 Numbro 引入了与 Webpack TerserPlugin(默认 minfier)的冲突[1]。
Handsontable v7.0.1
将通过降级 numbro 依赖来解决此问题。或者您可以立即安装它:npm i numbro@2.1.1
并且 Handsontable 将使用您的版本。
[1] https://github.com/BenjaminVanRyseghem/numbro/issues/402#issuecomment-471586507
向我的可操作实例添加一行时出现以下错误:
core.js.pre-build-optimizer.js:15724 ERROR RangeError: toFixed() digits argument must be between 0 and 100 at Number.toFixed () at h (numbro.min.js.pre-build-optimizer.js:1) at numbro.min.js.pre-build-optimizer.js:1
完整错误:
奇怪的是,我只在 ng build -prod
(或 --optimization
标志)上得到这个错误。
因此使用调试器很棘手,因为 js 已经编译,但是使用 console.log()
我将它缩小到这个可操作的调用:
hot.alter('insert_row');
在阅读了这个可动手操作的 compilation issue 之后,我正在重构项目以在 tsconfig.json
中启用 strict:true
,但事实证明这是相当多的工作。
有没有人遇到过类似的问题?
版本:
- Angular 7.2
- Handsontable 7.0.0(但问题也出现在 v6 中)
- 打字稿 3.2.4
我没有在我的代码中的任何地方使用 numbro
库,它纯粹是 handsontable
的依赖项(我的项目中也没有其他库使用它)。
你是对的,它与 Handsontable 版本无关。 v2.1.2
中的依赖项之一 Numbro 引入了与 Webpack TerserPlugin(默认 minfier)的冲突[1]。
Handsontable v7.0.1
将通过降级 numbro 依赖来解决此问题。或者您可以立即安装它:npm i numbro@2.1.1
并且 Handsontable 将使用您的版本。
[1] https://github.com/BenjaminVanRyseghem/numbro/issues/402#issuecomment-471586507