此处bundle.js
通过browserify
捆绑在一起,其中包含一个名为webrtcsupport
的模块
<script type="text/javascript" src="/assets/js/bundle.js"></script>
<script type="text/javascript">
var webrtcSupport = require('webrtcsupport');
console.log(webrtcSupport.getUserMedia);
webrtcSupport.getUserMedia();
</script>
在浏览器(Chrome浏览器)控制台中输出:
function webkitGetUserMedia() { [native code] }
Uncaught TypeError: Illegal invocation
为什么我不能以这种方式调用上述函数以及正确的方法是什么?
答案 0 :(得分:1)
当调用上下文无效时,通常会导致错误“非法调用”。如果是.getUserMedia()
,则期望上下文为navigator
。
尝试webrtcSupport.getUserMedia.call(navigator, ...);