小编Jga*_*ona的帖子

Angular 8:无法实例化循环依赖 - ActivatedRoute

我正在尝试将APP_INITIALIZERAngular集成到我的项目中,以便在启动应用程序之前执行一些功能。当我在我的服务中使用来自 Angular的ActivatedRoute时,问题就出现了。

错误是:

Error: Provider parse errors:
Cannot instantiate cyclic dependency! ApplicationRef ("[ERROR ->]"): in NgModule AppModule in ./AppModule@-1:-1
Run Code Online (Sandbox Code Playgroud)

我想我在内部使用了两次导入或类似的东西。基本上我尝试了一些其他配置,但最后总是抛出同样的错误。

STACKBLITZ 示例: https ://stackblitz.com/edit/angular-bhpe7m

预期行为:只是为了能够通过 ActivatedRoute 服务检索一些 QueryParams 并在运行 Angular 应用程序之前使用它们执行一些功能

cyclic-dependency angular

6
推荐指数
2
解决办法
3万
查看次数

Angular中的html2canvas-无法调用类型缺少调用签名的表达式

我正在尝试将html2canvas库用于Angular 8项目。

我也尝试通过在项目中安装html2canvas类型,npm install --save @types/html2canvas但仍然无法正常工作。

模板:

<div #myform>
  <form>
    ...
  </form>
</div>
Run Code Online (Sandbox Code Playgroud)

零件:

import { Component, OnInit, ViewChild, ElementRef } from '@angular/core';
import * as html2canvas from 'html2canvas';

@Component({
  selector: 'app-pdf-viewer',
  templateUrl: './pdf-viewer.component.html',
  styleUrls: ['./pdf-viewer.component.scss']
})
export class PdfViewerComponent {
  @ViewChild('myform', { static: false, read: ElementRef }) pdfForm: ElementRef;

  constructor() {}


  pdfDownload() {
    html2canvas(this.pdfForm.nativeElement).then(canvas => {
      const imgData = canvas.toDataURL('image/png');
      document.body.appendChild(canvas);
    });
  }

}
Run Code Online (Sandbox Code Playgroud)

我的意图是将表单呈现为画布,但是应用程序引发错误:

src / app / grid / pdf-viewer / pdf-viewer.component.ts中的错误(19,5):错误TS2349:无法调用类型缺少调用签名的表达式。输入'typeof import(“ myroute”)',表示您不支持呼叫签名。

types html2canvas typescript angular

5
推荐指数
2
解决办法
1725
查看次数

类型 'HTMLCollectionOf&lt;HTMLCanvasElement&gt;' 必须有一个返回迭代器的 '[Symbol.iterator]()' 方法

我正在构建一个数组

const myCanvas = documen.getElementsByTagName('canvas')

它实际上是有效的。它返回给我这样的东西:

images: [
0: canvas,
1: canvas,
2: canvas
]
Run Code Online (Sandbox Code Playgroud)

这是一个 Typescript 项目,我想迭代这个数组并转换每个图像以记录它。

像这样:

for (const image of myCanvas) {
      console.log(canvas.toDataURL());
    }
Run Code Online (Sandbox Code Playgroud)

(我没有使用 foreach 因为它不适用于 HTMLCollectionOf 类型)

我需要迭代 getElementsByTagName 返回给我的 HTMLCollection。输出是Type 'HTMLCollectionOf' 必须有一个返回迭代器的 'Symbol.iterator' 方法

错误

typescript for-of-loop

4
推荐指数
3
解决办法
5300
查看次数