И до вызова super.reload, у нас происходит ререндер, так как данных нет и мы скрываем b-virtual-scroll через v-if, происходит его дестрой и затем мы доходим до super.reload который как раз падает с ошибкой, так как компонент уже уничтожен
Стектрейс ошибки
TypeError: Cannot read properties of undefined (reading 'lfc')
at initLoad (https://cb.edadeal.ru/v2:90:615779)
at Proxy.s (https://cb.edadeal.ru/v2:90:1316714)
at Object.reload (https://cb.edadeal.ru/v2:90:759712)
at Object.reload (https://cb.edadeal.ru/v2:90:1230091)
Описание проблемы
Мы перед созданием компонента вызываем
initLoad
, до его завершения мы покидаем страницу, если ещё точнее, нас волнует полеisReadyOnce
, оно остаетсяfalse
. Затем возвращаемся на эту страницу, мы попадаем вonActivated
и регистрируемsetImmediate
https://github.com/V4Fire/Client/blob/503435cdc7e12edf2236a63dc01253c4115f909d/src/components/super/i-block/modules/activation/index.ts#L185 после этого продолжается запросinitLoad
и выставляетсяisReadyOnce = true
. После чего вызывается колбэк изsetImmediate
, который в зависимости отisReadyOnce
вызывает либоreload
, либоinitLoad
https://github.com/V4Fire/Client/blob/503435cdc7e12edf2236a63dc01253c4115f909d/src/components/super/i-block/modules/activation/index.ts#L199-L201В
reload
у нас вi-data
есть(await this.remoteState.net.isOnline()).status
, и после вызовsuper.reload()
. https://github.com/V4Fire/Client/blob/503435cdc7e12edf2236a63dc01253c4115f909d/src/components/super/i-data/i-data.ts#L265-L269И до вызова
super.reload
, у нас происходит ререндер, так как данных нет и мы скрываемb-virtual-scroll
черезv-if
, происходит его дестрой и затем мы доходим доsuper.reload
который как раз падает с ошибкой, так как компонент уже уничтоженСтектрейс ошибки