videojs / videojs-vimeo

Support Vimeo source for Video.js
MIT License
196 stars 204 forks source link

Uncaught Error: Illegal component, "Vimeo"; with updated videojs[6.2.5] #122

Closed santoshshinde2012 closed 6 years ago

santoshshinde2012 commented 7 years ago

I have used the updated version of vimeo[v2.0.0] and youtube[2.0.8] with updated version of videojs[6.2.5].

For me youtube is working fine but for vimeo its giving me error on console like,

videojs.min.js:2 Uncaught Error: Illegal component, "Vimeo"; techs must be registered using Tech.registerTech(). at Function.t.registerComponent (videojs.min.js:2) at Object.<anonymous> (video-vimeo.js:308) at Object.2.@vimeo/player (video-vimeo.js:321) at s (video-vimeo.js:7) at e (video-vimeo.js:7) at video-vimeo.js:7 at video-vimeo.js:7 at video-vimeo.js:7

So I have checked module code of youtube and vimeo, But in vimeo trying to reg component as like

Tech.registerTech('Vimeo', Vimeo); Component.registerComponent('Vimeo', Vimeo);

I have changed it by following code as like youtube and its working fine.

//Older versions of VJS5 doesn't have the registerTech function if (typeof Tech.registerTech !== 'undefined') { Tech.registerTech('Vimeo', Vimeo); } else { Component.registerComponent('Vimeo', Vimeo); }

Please let me know is that correct way or need to change it.

Thanks

janshajansha commented 6 years ago

Hello For Video Js 6.3.3 I tried with the following in the Vimeo JS file.

I replaced the following code Component.registerComponent('Vimeo', Vimeo); Tech.registerTech('Vimeo', Vimeo);

with the following

if (typeof videojs.registerTech !== 'undefined') { videojs.registerTech('Vimeo', Vimeo); } else { videojs.registerComponent('Vimeo', Vimeo); }

If you try with the new version, you can use the above code..

santoshshinde2012 commented 6 years ago

Thanks, I did already pull request for same to here.