Кнопка React Mapbox Extra не работает во всплывающем окне - PullRequest
0 голосов
/ 14 апреля 2020

Я работаю с mapbox реакции gl - Это работает довольно хорошо до сих пор ... за исключением одной вещи. Пользователь может добавить местоположение своего родного города на карту. Когда появляется местоположение в родном городе, его можно щелкнуть для просмотра всплывающего окна. Я хочу, чтобы пользователь мог удалить местоположение из карты из всплывающего окна - поэтому я добавил функцию, которая удаляет местоположение из базы данных при нажатии кнопки. Проблема в том, что когда кнопка находится внутри всплывающего окна, функция не срабатывает - и я понятия не имею, почему.

Я перепутался с индексом z кнопки, но кажется, что при каждом нажатии кнопки вызывается функция onClose вместо функции handleDeleteHome ...

Редактировать * Если я удалить функцию onClose, функция handleDeleteHome срабатывает.

Любая помощь ценится! Спасибо!

{selectedHome && (
                            <Popup 
                                latitude={bandLocation[0]} 
                                longitude={bandLocation[1]}
                                onClose={() => {setSelectedHome(null)}}
                                offsetLeft={23}
                                offsetTop={-10}
                                >
                                    <div>
                                        <h4>Home Town</h4>
                                        <Button 
                                            onClick={(e) => {
                                            e.preventDefault()
                                            handleDeleteHome()
                                        }} 
                                        color="danger">x</Button>
                                    </div>
                            </Popup>
                        )}

1 Ответ

1 голос
/ 14 апреля 2020

Хорошо! Разобрался - если кому-то еще нужно знать: вам нужно добавить closeOnClick = {false} во всплывающее окно!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...