From 4d1a24cc4ff9c773f6d9f6c6241fddf4ed5dc2ec Mon Sep 17 00:00:00 2001 From: indykoning <15870933+indykoning@users.noreply.github.com> Date: Wed, 27 Nov 2024 16:58:56 +0100 Subject: [PATCH] Improved Vue/Turbo loading speed fix (#662) --- resources/js/package.js | 7 +++++-- tests/DuskTestCaseSetup.php | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/resources/js/package.js b/resources/js/package.js index a534f4b85..3de8dbeac 100644 --- a/resources/js/package.js +++ b/resources/js/package.js @@ -17,10 +17,10 @@ import './vue' import './fetch' import './filters' import './mixins' -;(() => import('./turbolinks'))() import './cookies' import './callbacks' import './vue-components' +import './turbolinks' if (import.meta.env.VITE_DEBUG === 'true') { document.addEventListener('vue:loaded', () => { @@ -50,10 +50,12 @@ document.addEventListener('vue:loaded', () => { } }) +let booting = false function init() { - if (document.body.contains(window.app.$el)) { + if (booting || document.body.contains(window.app.$el)) { return } + booting = true // https://vuejs.org/api/application.html#app-config-performance Vue.config.performance = import.meta.env.VITE_PERFORMANCE == 'true' @@ -189,6 +191,7 @@ function init() { }) setTimeout(() => { + booting = false const event = new CustomEvent('vue:loaded') document.dispatchEvent(event) }) diff --git a/tests/DuskTestCaseSetup.php b/tests/DuskTestCaseSetup.php index 74a5cf7ee..eeac13bf7 100644 --- a/tests/DuskTestCaseSetup.php +++ b/tests/DuskTestCaseSetup.php @@ -48,7 +48,7 @@ protected function setUp(): void /** @var Browser $this */ $this ->waitUntilIdle() - ->waitUntilTrueForDuration('document.body.contains(window.app?.$el) && window.app?._isMounted && console.log("mounted") === undefined', 10, 1) + ->waitUntilTrueForDuration('document.body.contains(window.app?.$el) && window.app?._isMounted', 60, 1) ->waitUntilIdle(); return $this;