angular - 编译 Angular 2 和 Firebase 存储时出错

标签 angular typescript angular-cli

我目前使用的是 Angular 4.x.x(所有最新版本)以及 AngularFire 和 Firebase Storage。

在对 Angular CLI/编译器进行更新之前一切正常,但现在应用程序变得无法编译。

uploadTask.on('state_changed', function (snapshot) {
      // Snapshot code here
  }, function (error) {
      // Unsuccessful upload code
  }, function () {
      // Successful upload code here
  });

这是编译器失败的地方,我收到如下错误:

“() => void”类型的参数不可分配给“Unsubscribe”类型的参数。

类型“void”不可分配给类型“undefined”。

我正在导入 firebase:

import * as firebase from 'firebase';

显然它在 void 函数上失败了(以前从未失败过)

谢谢!

最佳答案

幸运的是,我遇到了类似的问题 firebase 接受一个对象作为第二个参数。我将代码更改为

uploadTask.on('state_changed', {next :function (snapshot) {
  // Snapshot code here
}, error: function (error) {
  // Unsuccessful upload code
}, complete: function () {
  // Successful upload code here
}});

这似乎有效并关闭了编译器。

关于angular - 编译 Angular 2 和 Firebase 存储时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45490428/

相关文章:

Angular CLI 生成的库 - 无法从其模块导入组件

typescript - Angular2/RxJS - 从 Http observable 获取数据后更新变量

javascript - Angular/Firebase : How to put user response in front-end model

javascript - 如何创建 Angular Electron 应用程序的exe软件包

typescript - 为什么 typescript 识别出对象的类型是字符串时,不让我将对象的值设置为字符串?

angular - npm 包 Angular-CLI 和 @Angular/CLI 之间有什么关系?

html - 工具栏调整大小后图像大小未更新

javascript - TypeScript各种文件扩展名解释?

angular - 导入 Angular 2+ 的传单

angular - SystemJS 6.x 设置/注册模块或在动态加载模块时提供映射