2017-10-13 9 views
1

J'ai essayé de télécharger un fichier de mon ordinateur dans mon répertoire de projet en utilisant le composant Ant Design Upload. Une fois téléchargé, je peux faire ce que je veux avec elle, mais je reçois à plusieurs reprises cette erreur:Ant-Design Téléchargez comment télécharger un fichier dans un répertoire de votre fichier de projet

POST file:///home/usr/app/uploadedFiles net::ERR_FILE_NOT_FOUND

Je ne sais pas pourquoi il dit « fichier non trouvé » puisque je veux juste préciser la chemin de fichier que je fournis comme emplacement pour ce que je télécharge. Dans les docs, il spécifie que 'action' est l'url pour tout ce que vous voulez télécharger mais je ne vois pas pourquoi un chemin de fichier devrait causer des problèmes. Ils utilisent XMLHttpRequest(); comme backend pour télécharger des fichiers.

Vous pouvez trouver les documents de téléchargement antd here.

Il est important de noter que, bien que l'erreur soit là, un nouveau fichier apparaît toujours dans la liste des fichiers sous le téléchargement et est ajouté à fileList dans l'état. Le problème est que j'ai besoin de ces fichiers à sauvegarder dans un répertoire dans le projet lui-même, plutôt que temporairement dans mon composant.

Mon code pertinent est ci-dessous. Je suis bien sûr en train d'utiliser React.

uploadedBundle = (info) => { 
    console.log(info) 
    if (info.file.status !== 'uploading') { 
     console.log(info.file, info.fileList); 
    } 
    if (info.file.status === 'done') { 
     console.log(info); 
    } else if (info.file.status === 'error') { 
     console.log(info.fileList); 
    } 
    this.setState({ 
     fileList: info.fileList, 
     size: +info.file.size 
    }) 
    } 
    render() { 
    const uploads = { 
     action: __dirname + '/uploadedFiles', 
     listType: 'picture', 
     defaultFileList: this.state.fileList, 
     onChange: this.uploadedBundle 
     // customRequest: this.uploadedBundle 
    }; 
    return (
     <Upload {...uploads}> 
     <Button className='modal-button login-form-button'> 
      <Icon type="upload">Upload A Study</Icon> 
     </Button> 
     </Upload> 
    ) 
    } 

Répondre

0

Vous devez créer un serveur de NodeJS sur votre PC local pour le faire