Существует ли способ приостановить Базовую Анимацию и возобновить его в некоторое время спустя?

Если вы используете Vuex, вы можете использовать https://github.com/vuejs/vuex-router-sync

Просто инициализируйте его в вашем основном файле с помощью:

import VuexRouterSync from 'vuex-router-sync';
VuexRouterSync.sync(store, router);

Каждое изменение маршрута будет обновлять route объект состояния в Vuex. Затем вы можете создать getter, чтобы использовать объект from в состоянии маршрута или просто использовать state (лучше использовать геттеры, но это другая история https://vuex.vuejs.org/en/ getters.html ), так что вкратце (внутри методов / значений компонентов):

this.$store.state.route.from.fullPath

Вы также можете просто поместить его в компонент :

 
  Back 

Поэтому, когда вы используете код выше, ссылка на предыдущий путь будет генерироваться динамически.

8
задан Corey Floyd 4 June 2009 в 02:12
поделиться

2 ответа

Единственный способ, которым я получил вокруг этого находится следующее.

Для каждого представления, которое вы хотите остановить анимацию:

Установите кадр представления на уровень представления

Удалите все анимации из этого представления

Выполните прокрутку

Пересчитайте анимацию

Добавьте новую анимацию к виду

Я знаю, что это не то, что вы хотите слышать, но это не так плохо, как кажется. Хороший способ отслеживать просмотры, которые вы хотите остановить, - это присвоить им заранее определенный тег.


Чтобы удалить анимацию:

[myView.layer removeAllAnimations]

[myView.layer removeAnimationForKey: @ "theAnimationKey"]

4
ответ дан 5 December 2019 в 06:10
поделиться

Вы можете приостановить анимацию слоя, установив скорость анимации на ноль, см. Как приостановить анимацию дерева слоев .

18
ответ дан 5 December 2019 в 06:10
поделиться
Другие вопросы по тегам:

Похожие вопросы: