Vue: Keep-Alive внутри перехода не работает с include

Созданный на 31 мар. 2017  ·  4Комментарии  ·  Источник: vuejs/vue

Версия

2.2.6

Ссылка для воспроизведения

https://jsfiddle.net/50wL7mdz/24930/

Действия по воспроизведению

Нажмите кнопку «Переключить вид».

Что ожидается?

Состояние «домашнего» представления должно было сохраняться при переключении на другое представление входа.

Что на самом деле происходит?

Вместо этого каждый раз воссоздается "домашний" вид.


Если я удалю параметр include = "home" из keep-alive, он будет работать, как предполагалось, или если я удалю параметр mode = "out-in" из узла перехода, он также будет работать, как задумано.
Я отладил это, и кажется, что каждый раз, когда он переключает компонент, часы «include» каким-то образом запускаются с неопределенным параметром val, а затем снова запускаются с правильным «домашним» значением, но к тому времени первый триггер срабатывает. домашний узел уже удален из кеша.

Все 4 Комментарий

Чтобы использовать опцию включения, вы должны указать свойство name для компонента (ов). Это также следует объяснить в документации.

На самом деле, забудьте об этом, это должно сработать ...

А пока вы можете использовать исключение с остальными компонентами в качестве временного решения.

@posva Вы уже знаете, почему кеш становится недействительным, когда я использую include?

Была ли эта страница полезной?
0 / 5 - 0 рейтинги