属性 'copy' 在类型 'Clipboard' 上不存在

Property 'copy' does not exist on type 'Clipboard'

我正在尝试在单击按钮时复制文本。我尝试遵循 Angular 的文档 (https://material.angular.io/cdk/clipboard/overview#programmatically-copy-a-string),但我的终端在编译时出现以下错误:

Property 'copy' does not exist on type 'Clipboard'

这是我的 .ts 文件:

export class myComponent implements OnInit {
  constructor(private clipboard: Clipboard) {}
  ngOnInit(): void {}

  copyTest() {
    this.clipboard.copy("test"); // Property 'copy' does not exist on type 'Clipboard'.
  }
}

这是我的 .html 文件:

<button [cdkCopyToClipboard]="copyTest()">Click to copy</button>

这是我的 app.module.ts 文件:

import { ClipboardModule } from "@angular/cdk/clipboard";

@NgModule({
  declarations: [
    AppComponent,
    myComponent,
  ],
  imports: [
    ClipboardModule,
  ]
})

知道为什么会出现此错误吗?

试试这个:

<button [cdkCopyToClipboard]="copyTest('Test!')">Click to copy</button>

copyTest(test: string) {
    this.clipboard.copy(test);
  }

您一定是缺少正确的剪贴板导入。

尝试添加:import { Clipboard } from '@angular/cdk/clipboard'; 到您的 .ts 文件以及您的 app.module.ts。

还有一个界面剪贴板,您的 IDE 可能将其接受为有效的 TS。