angular - 是什么导致无法执行“createObjectURL”错误?
问题描述
我正在尝试使用笔记本电脑相机拍摄快照。
过去可以完美运行,但现在我的控制台出现错误:
错误错误:未捕获(承诺中):TypeError:无法在“URL”上执行“createObjectURL”:未找到与提供的签名匹配的函数。
这是我的代码(component.ts):
public ngAfterViewInit() {
if (navigator.mediaDevices && navigator.mediaDevices.getUserMedia) {
navigator.mediaDevices.getUserMedia({ video: true }).then(stream => {
this.video.nativeElement.src = window.URL.createObjectURL(stream);
this.video.nativeElement.play();
});
}
}
解决方案
URL.createObjectURL() 方法已从 MediaStream 接口中删除。此方法已在 2013 年弃用,并通过将流分配给 HTMLMediaElement.srcObject 来取代。旧方法已被删除,因为它不太安全,需要调用 URL.revokeOjbectURL() 来结束流。其他用户代理已弃用 (Firefox) 或删除 (Safari) 此功能。
如需更多信息,请参阅此处。
推荐阅读
- c# - 有没有更有效的方法从 c# 字典中过滤旧记录
- nginx - NGINX 打开的文件太多
- date - 是否有一个查询公式来计算特定 ID 在特定日期的最新值以及所有唯一 ID 的值?
- python - 有没有办法概括 Spacy 的 retokenizer.split 的论点中的正交?
- html - 导航栏打不开
- kubernetes - 从集群内部连接到 Kafka Kubernetes 集群
- go - 带有外键的Gorm简单查找不起作用
- c# - 将数据填入类
- javascript - 如何为 Rust 和 Javascript 定义一次常量?
- python - 无法打开文件'import.py':[Errno 2] 没有这样的文件或目录