Открыть внешнюю ссылку с функцией в React - PullRequest
1 голос
/ 02 июня 2019

Я пытаюсь создать в React кнопку, которая открывает внешнюю ссылку на URL-адрес карты Google.

У меня есть функция, которая запрашивает у пользователя его геолокацию, которая когда-то предоставляла, вводит местоположение в ссылку URL, которая получает указания от их геолокации до заданного пункта назначения.

Однако я изо всех сил пытаюсь получить кнопку, чтобы сначала запустить функцию и открыть URL-адрес в новой вкладке . В настоящее время я так называю компонент кнопки.

<Button variant="primary" onClick={this.onHandleClick}>Get Google Maps Directions</Button>

И это функция, которая формирует и открывает ссылку.

  onHandleClick = () => {
    var location = this.state.currentLocation;

    location.then(function(location){
      var link = `google.com/maps/dir/?api=1&origin=${location}&destination=50.927044,-1.299964&travelmode=driving`      

      //window.location.href = link;
      window.location.assign(link);
    })
  }

В настоящее время внешняя ссылка создается правильно, но добавляется к существующему домену localhost в URL, поэтому не открывается в данный момент (или в новой вкладке).

URL-адрес результата вышеуказанных функций:

http://localhost:3000/google.com/maps/dir/?api=1&origin=50.4984,%20-2.6119074&destination=50.927044,-1.299964&travelmode=driving

Я пытался установить target = "_ blank" при вызове компонента.

Любая помощь будет принята с благодарностью!

Спасибо, Max

Ответы [ 2 ]

1 голос
/ 02 июня 2019
window.open(link, "_blank");

это заставит ссылку открывать новую вкладку каждый раз

0 голосов
/ 02 июня 2019

Ответ на вопрос, если это поможет людям в будущем ...

Как подсказывает @ user2950720, метод window.open правильно отображает ссылку на новой вкладке.

Чтобы остановить ссылкуот добавления к localhost /, убедитесь, что в начале ссылки введено 'https://'.

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