реагировать js - реализация загрузки по ссылке с путем к файлу firebase

У меня есть проанализированный объект JSON, поступающий с сервера, и у меня есть URL-адрес загрузки в моих реквизитах этого дочернего компонента. Теперь мне нужно сделать кнопку загрузки из этого. Как отсюда проще всего добраться? Я проанализировал свой объект как json, как обычно — это не сработает? Вот мой код:

import React from "react";
import { FiCopy, FiDownload } from "react-icons/fi";
import { CopyToClipboard } from "react-copy-to-clipboard";
import { BrowserRouter, Link } from "react-router-dom";

class PlayerCaption extends React.Component {
  constructor(props) {
    super(props);
    this.downloadVid = this.downloadVid.bind(this);
    this.onCopy = this.onCopy.bind(this);
    this.state = {
      copied: false,
      value: "default text"
    };
  }
  downloadVid() {
    this.props.dwn_url();
  }
  onCopy = () => {
    this.setState({ copied: true });
  };

  render() {
    return (
      <div className="caption">
        <p className="video-buttons">
          <CopyToClipboard text={this.props.copy()} onCopy={this.onCopy}>
            <button type="button" id={this.props.id}>
              <FiCopy size={30} />
            </button>
          </CopyToClipboard>
          {this.state.copied ? <span>Copied!</span> : null}
          <BrowserRouter>
            <Link
              to={this.props.dwn_url()}
              onClick={e => e.preventDefault()}
              download={this.props.dwn_url()}
            >
              <FiDownload size={30} />
            </Link>
          </BrowserRouter>
        </p>
      </div>
    );
  }
}

export default PlayerCaption;

В настоящее время ссылка указывает на URL-адрес, но не запускает загрузку.


person theusual    schedule 14.08.2019    source источник
comment
В чем проблема? Разве Link не указывает на любой URL-адрес, полученный от this.props.dwn_url()?   -  person kaveh    schedule 14.08.2019
comment
Это указывает, но не запускает загрузку   -  person theusual    schedule 14.08.2019
comment
Что это за документ? Просто создайте якорь вместо Link, т.е. <a href={this.props.dwn_url()} target="blank" ref="......">blah blah blah</a>, и он должен либо открыть документ непосредственно в браузере (если поддерживается), либо инициировать загрузку.   -  person kaveh    schedule 14.08.2019
comment
это ссылка на видео, и я попробовал тег привязки - это не сработало   -  person theusual    schedule 14.08.2019
comment
Он просто открывает видео в новой вкладке, но я хочу, чтобы оно начинало загружаться по клику.   -  person theusual    schedule 14.08.2019
comment
Ознакомьтесь с ответом здесь, он может иметь отношение к вашему делу: stackoverflow.com/questions/40707684/   -  person kaveh    schedule 14.08.2019
comment
Хм, я сделал, и в моем случае разница в том, что мои данные уже проанализированы. Вот почему я спрашиваю, нужно ли мне передавать мои данные этому компоненту в каком-то другом формате.   -  person theusual    schedule 14.08.2019
comment
Пожалуйста, поделитесь своими данными как-нибудь или уточните, что вы подразумеваете под анализом (он анализируется в Bytearray или что-то еще?)   -  person kaveh    schedule 14.08.2019