Javascript:未捕获TypeError:非法调用

时间:2015-10-29 12:40:22

标签: javascript browserify

此处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

为什么我不能以这种方式调用上述函数以及正确的方法是什么?

1 个答案:

答案 0 :(得分:1)

当调用上下文无效时,通常会导致错误“非法调用”。如果是.getUserMedia(),则期望上下文为navigator

尝试webrtcSupport.getUserMedia.call(navigator, ...);