升级到Angular 10后,我的下载file-saver saveAs
触发以下编译警告:
CommonJS or AMD dependencies can cause optimization bailouts.
编译器还提供link to an explanation以及如何禁用警告。除了禁用警告之外,没有saveAs
功能的ES捆绑软件实现?
答案 0 :(得分:10)
改用 file-saver-es。
npm install -S file-saver-es
然后在您的代码中导入 saveAs 和其他代码保持不变。
import { saveAs } from 'file-saver-es';
答案 1 :(得分:1)
在文件保存器上有一个使用es模块的拉取请求,但是现在已经快一年了,所以我不知道它是否会发生。 Here is a link to the Flexx wrapper code您也可以使用拉取请求的存储库,但是它位于原始存储库的后面。 还有The pull request is here.,称为ngx-filesaver,使用FileSaver.js。我还没有尝试过,所以不知道它是否可以解决问题,或者它是否有用。
我尝试了ngx-filesaver,它似乎只是将FileSaver.js包装在Angular模块中。因此,尽管它为您提供了与其余的角度代码更加内联的服务,但它不会处理commonJS或AMD依赖项警告。
答案 2 :(得分:0)
我尝试了一切,但没有任何效果。所以决定闭嘴。
我在 Error: type mismatch: got <uint8, float>
but expected one of:
proc `*`(x, y: uint): uint
first type mismatch at position: 2
required type for y: uint
but expression 'f' is of type: float
proc `*`(x, y: uint16): uint16
first type mismatch at position: 2
required type for y: uint16
but expression 'f' is of type: float
proc `*`(x, y: uint32): uint32
first type mismatch at position: 2
required type for y: uint32
but expression 'f' is of type: float
proc `*`(x, y: uint64): uint64
first type mismatch at position: 2
required type for y: uint64
but expression 'f' is of type: float
proc `*`(x, y: uint8): uint8
first type mismatch at position: 2
required type for y: uint8
but expression 'f' is of type: float
8 other mismatching symbols have been suppressed; compile with --showAllMismatches:on to see them
expression: r1 * f
文件中添加了文件保护程序作为允许的 commonjs 依赖项。
angular.json
项目->架构师->构建->选项。