2

我正在尝试共享用户屏幕并需要使用getDisplayMedia但在项目编译时出错

“导航器”类型上不存在属性“getDisplayMedia”

这是代码

let stream = await navigator.getDisplayMedia({ video: true })

包版本为

  1. 节点 v10.14.2
  2. NPM v6.5.0
  3. @角/cli v6.1.5
4

4 回答 4

3

根据您需要使用 的文档navigator.mediaDevices.getDisplayMedia

navigator您看到的错误是因为命名的没有可用的属性getDisplayMedia

于 2018-12-15T07:26:30.890 回答
2

如果您处于角度状态,则不会使用导航器或 mediaDevices 获取 DisplayMedia。它在 getDisplayMedia 上显示错误。所以你可以做些什么来消除错误。

宣布

nav: any;

那么你必须在哪里使用 getDisplayMedia()

this.nav = navigator;

stream = this.nav.mediaDevices.getDisplayMedia(your content)

于 2021-04-02T07:29:56.987 回答
2

Angular 6+

let stream = await navigator.getDisplayMedia({ video: true })
console.log(stream)

注意:录屏Angular 6+需要开启experimental web platform featureschrome://flags直到正常启动,因为它处于开发和测试模式

有关详细信息,请参见下图:

在此处输入图像描述

于 2019-02-07T04:10:32.050 回答
1

getDisplayMedia在 中不再可用navigator。它被移到navigator.mediaDevices.getDisplayMedia.

资源

还要确保你有navigator安装的类型。

于 2018-12-15T07:26:58.597 回答