Нет кнопки загрузки с использованием FilePond ReactJs - PullRequest
1 голос
/ 17 апреля 2019

Добрый день,

Я хочу использовать FilePond с Reactjs для облегчения загрузки изображений на сервер. Я хочу, чтобы файл заполнялся в пруду, как показано в описании, а затем для кнопки загрузка *1004* появится Пользователь, чтобы загрузить файл.

Первоначально из-за использования их демонстрационного кода я заметил, что он будет автоматически загружать файлы, и из чтения документации я вижу, что отключаю эту функцию автоматической загрузки, используя «instantUpload = {false}» на моем сервере. Однако я сделал это, и у меня все еще нет кнопки загрузки для пользователя, чтобы использовать. Я прочитал документацию еще немного, и они говорят, что мне нужно указать сервер, который у меня есть. Есть ли что-то, что мне не хватает, чтобы показать кнопку загрузки в моем коде.

Код ниже:

import React, { Component } from "react";
/*import agent from "superagent";*/
import classNames from "classnames";
import cookie from 'react-cookies';

// Import React FilePond
import { FilePond, registerPlugin } from "react-filepond";

// Import FilePond styles
import "filepond/dist/filepond.min.css";

// Import the Image EXIF Orientation and Image Preview plugins
// Note: These need to be installed separately
import FilePondPluginImageExifOrientation from "filepond-plugin-image-exif-orientation";
import FilePondPluginImagePreview from "filepond-plugin-image-preview";
import "filepond-plugin-image-preview/dist/filepond-plugin-image-preview.css";

// Register the plugins
registerPlugin(FilePondPluginImageExifOrientation, FilePondPluginImagePreview);


export default class FotoUpload extends Component {
  constructor(props) {
   super(props);

   this.state = {
     // Set initial files, type 'local' means this is a file
     // that has already been uploaded to the server (see docs)
     files: [
       {
         source: "index.html",
         options: {
           type: "local"
         }
       }
     ]
   };
 }

 handleInit() {
   console.log("FilePond instance has initialised", this.pond);
 }

 render() {
   return (
     <div className="App">
       {/* Pass FilePond properties as attributes */}
       <FilePond
       ref={ref => (this.pond = ref)}
                  allowFilePoster={true}
                  instantUpload={false}
                  server=
                      {
                        {
                          url: 'http://mybackend.com:5000/upload/images',
                          process: {
                          headers: {
                                'cookie-token':  cookie.load('cookie')
                                  },
                            }
                          }
                        }
                  name="image"
                  acceptedFileTypes={['image/*']}
                  oninit={() => this.handleInit()}
         onupdatefiles={fileItems => {
           // Set currently active file objects to this.state
           this.setState({
             files: fileItems.map(fileItem => fileItem.file)
           });
         }}
       />
     </div>
   );
 }
}

Если я разрешу функцию instaupload, файл загрузится и вернется успех, но я все равно не получу кнопку загрузки.

Myimage

Как видите, кнопки загрузки нет, как показано в официальной документации. My image

Аналогичная проблема https://github.com/pqina/vue-filepond/issues/5

Документация FilePond https://pqina.nl/filepond/docs/patterns/api/server/

Официальный репо https://github.com/pqina/react-filepond

...