javascript - 将 video.js 库与 Webpack 的 ProvidePlugin 结合使用

标签 javascript webpack video.js webpack-2

我正在尝试在使用 video.js 的应用程序中将 Webpack 从版本 1 升级到版本 3库,我想将 videojs 作为全局变量公开给我的脚本。

在我的 webpack.config.js 文件的 plugins 部分中,我有以下内容:

plugins: [
  new webpack.ProvidePlugin({
    videojs: 'video.js'
  })
]

现在,举个例子,如果我想使用 registerPlugin 函数,我必须执行类似的操作(因为 videojs.registerPluginundefined):

videojs.default.registerPlugin(...);

我不明白为什么我需要在此处包含 default!

我尝试使用数组语法:

plugins: [
  new webpack.ProvidePlugin({
    videojs: ['video.js', 'videojs']
  })
]

但现在我的 videojs 全局变量是未定义

在当前应用程序中,我有 ProvidePlugin 的第一个语法,并且 videojs 变量在全局可用,但我不明白 Webpack 版本 3 中有什么不同.我在这里缺少什么?

感谢任何帮助, 谢谢

最佳答案

所以,我找到了解决问题的方法。我得到的线索是我需要通过 default 属性访问 registerPlugin 。因此,在 webpack.config.js 中,我可以准确地提供:

plugins: [
  new webpack.ProvidePlugin({
    videojs: ['video.js', 'default']
  })
]

现在,我可以直接访问videojs.registerPlugin函数了:)

关于javascript - 将 video.js 库与 Webpack 的 ProvidePlugin 结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46246314/

相关文章:

javascript - 如何避免在 JavaScript 中输入特殊字符

node.js - Vue CLI 和 Webpack : can't get webpack-dev-server to run

webpack - 如何通过 webpack 在 Handlebars 中使用助手(handlebars-loader)

videojs html5 视频检索相对于实时内容的绝对时间

javascript - 如何通过可滚动内联并排放置多个表格

javascript - 在每个输入字段上运行 JavaScript 函数

javascript - ReactJS webpack babel : _this2 is undefined when clicking button whose function is passed via a parameter

reactjs - 如何将 VideoJS 插件与 ReactJS 一起使用?

java - 使用 java 和 video.js 从输入流加载视频

php - 关于实时搜索领域的安全问题