diff --git a/src/platforms/app-plus/view/framework/plugins/data.js b/src/platforms/app-plus/view/framework/plugins/data.js index d0a8d837ce069a2cd5849707f82f734201e99c2e..e8efc26631e7f879e9fe63fa31a6b58ccd76aa45 100644 --- a/src/platforms/app-plus/view/framework/plugins/data.js +++ b/src/platforms/app-plus/view/framework/plugins/data.js @@ -69,6 +69,19 @@ function broadcast (vm, componentName, eventName, ...params) { }) } +const NATIVE_COMPONENTS = ['Camera', 'LivePlayer', 'LivePusher', 'Map', 'Video'] + +function updateView () { + const pages = getCurrentPages() + pages.length && broadcast( + pages[0].$vm, + NATIVE_COMPONENTS, + 'uni-view-update' + ) +} + +window.addEventListener('resize', updateView) + function vdSync ({ data, options @@ -82,11 +95,7 @@ function vdSync ({ }) vd.flush() Vue.nextTick(() => { - broadcast( - getCurrentPages()[0].$vm, - ['Camera', 'LivePlayer', 'LivePusher', 'Map', 'Video'], - 'uni-view-update' - ) + updateView() isVdCallback && UniViewJSBridge.publishHandler(VD_SYNC_CALLBACK) }) }