如果用户正在我的 Meteor 应用程序的页面上观看视频或流式传输音频,在推送新代码时,我是否可以使用某些东西来防止该特定播放器元素在热代码重新加载期间刷新/停止/关闭?
目前,如果我对代码库进行更改并且用户正在观看/收听某些内容,他们将被打断并且播放器将停止。
如果用户正在我的 Meteor 应用程序的页面上观看视频或流式传输音频,在推送新代码时,我是否可以使用某些东西来防止该特定播放器元素在热代码重新加载期间刷新/停止/关闭?
目前,如果我对代码库进行更改并且用户正在观看/收听某些内容,他们将被打断并且播放器将停止。
如果有人正在观看视频,您可以使用 onMigrate api(未记录)禁用热代码推送:
function onMigrate (retry) {
//Return [true, data] to allow it to hot code reload, data being anything you want to be available when the page reloads
return false;
}
Meteor._reload.onMigrate("someName", onMigrate);
// or Meteor._reload.onMigrate(onMigrate);
eventedmind上还有一个视频广播,并在 github 上对此进行了一些评论:https ://github.com/meteor/meteor/blob/devel/packages/reload/reload.js#L81-L94