#vue.js #deck.gl
#vue.js #deck.gl
Вопрос:
Я использую vue в сочетании с deck.gl во время перехода состояния просмотра он продолжает воспроизводиться до завершения перехода, даже если он прерван.
Дека инициализации:
this.deck = new Deck({
canvas: 'deck-canvas',
width: '100%',
height: '100%',
initialViewState: this.initialViewState,
controller: true,
onViewStateChange: ({ viewState }) => {
this.map.jumpTo({
center: [viewState.longitude, viewState.latitude],
zoom: viewState.zoom,
bearing: viewState.bearing,
pitch: viewState.pitch,
});
},
});
Создание нового перехода view:
this.deck.setProps({
viewState: {
...predefinedCameraPosition,
transitionInterpolator: new FlyToInterpolator(),
transitionDuration: 2000,
transitionInterruption: this.deck._onViewStateChange.bind(this)
}
})
Я ожидаю, что переход прекратится, когда пользователь прервет его.
Ответ №1:
Оказывается, другая функция манипулировала deck.gl состояние слоя. Одновременное обновление ViewState исправило это.
this.deck.setProps({
layers: [...this.deckLayers],
viewState: this.deck.viewState
});