本文介绍了当我也使用RequireJS时,如何使用videojs插件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在开发一个包含一些我无法控制的JS代码的网站。该代码使用RequireJS加载依赖项和所有。

I'm working on a website that includes some JS code that I do not control. That code uses RequireJS to load dependencies and all.

免责声明:我是RequireJS noob。我理解基础知识,但这就是它......

Disclaimer: I'm a RequireJS noob. I understand the basics, but that's pretty much it...

在我的网站上,我需要使用VideoJS。 VideoJS可以使用,也可以不使用RequireJS,但根据我的理解,如果在页面的某个地方使用RequireJS,我就不能使用VideoJS。

In my website, I need to use VideoJS. VideoJS can work with, or without RequireJS but from what I understand, if RequireJS is used somewhere in the page, I cannot use VideoJS without it.

所以我正在加载带有RequireJS的VideoJS如下:

So I'm loading VideoJS with RequireJS like this:

var MyRequire = requirejs.config({
    baseUrl: '/_/js',
    paths: {
        videojs: 'http://vjs.zencdn.net/5.3.0/video'
    }
});
MyRequire(["videojs"], function(videojs) {
    videojs('myPlayer', {}, function(){
        console.log('...');
    });
});

它正在发挥作用。

但是我想使用VideoJS插件来管理预付广告。 ()

But I want to use a VideoJS plugin to manage preroll ads. (https://github.com/dirkjanm/videojs-preroll)

我试图将插件脚本包含在RequireJS中,包含脚本,但是一旦插件尝试访问videojs对象,我就会收到错误,告诉我videojs没有定义。

I tried to include the plugin script with RequireJS, the script is included but as soon as the plugin tries to access the videojs object, I get an error telling me that videojs is not defined.

我的猜测是,当我将VideoJS作为RequireJS模块加载时,它不在全局范围内,而我正在使用的插件正在寻找全局范围内的VideoJS,那就是为什么我会收到这个错误。

My guess is that when I load VideoJS as a RequireJS module, it's not in the global scope and the plugin that I'm using is looking for VideoJS in the global scope and that's why I get that error.

有没有什么方法可以使用VideoJS而不加载它作为RequireJS模块?或者我该如何帮助插件找到VideoJS对象?

Is there any way I can use VideoJS without loading it as a RequireJS module? Or how can I help the plugin find the VideoJS object?

感谢您的帮助!

推荐答案

您应该使用

这篇关于当我也使用RequireJS时,如何使用videojs插件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-12 14:35