如何在Webpack中使用webrtc适配器(adapter.js)填充程序



我有一个常用的js浏览器应用程序(typescript),我使用Webpack来捆绑它。它使用webrtc,所以我想使用来自npm的webrtc适配器包。它是adapter.js的包,它使得在firefox&铬更容易。

在我的模块中,我希望能够访问修改后的导航器项。例如,所以我可以简单地调用:

navigator.mediaDevices.getUserMedia

如果我需要包,然后在我的模块中的某个地方使用变量,我可以让它工作,如下所示:

var webrtc = require("webrtc-adapter");
// somewhere in module
console.log(webrtc.browserDetails);

然而,我不需要通过webrtc适配器访问browserDetails或任何公开的项,我只想对navigator对象使用填充调用。我试过使用webpack。ProvidePlugin和externals,但两者仍然要求我在某个地方使用该对象。

有没有一种方法可以将填充导航器加载到每个模块中,而无需要求,然后在模块中的某个地方使用变量?我知道我可以在配置中使用外部,然后通过单独的脚本标记加载它,但我更喜欢让webpack将其捆绑在一起。

你试过这样要求它吗?

require('webrtc-adapter');

对于普通Webpack:

var a = require('webrtc-adapter');

对于TypeScript。如果您还想要一些打字员,也可以将reference标记与@types/webrtc一起使用。

/// <reference types="webrtc" />
import 'webrtc-adapter';

最新更新