dropzone.js (/js フォルダーに保存)、dropzone.css (/css フォルダーに保存)、および提供された 2 つの画像 (/images フォルダーに保存) をダウンロードしました。
これらのチュートリアルの両方を使用する ( http://www.startutorial.com/articles/view/how-to-build-a-file-upload-form-using-dropzonejs-and-php && http://maxoffsky.com/ code-blog/howto-ajax-multiple-file-upload-in-laravel/ ) 最も基本的なドロップゾーンを作成しようとしました...
私のhtmlファイルの関連コンテンツは次のとおりです。
<script src="js/dropzone.js"></script>
<link media="all" type="text/css" rel="stylesheet" href="css/dropzone.css">
// Other html code
<form action="api/v1/upload" class="dropzone"></form>
私のAPIアップロード方法は次のとおりです(Laravelを使用しているため、このコードは上記のチュートリアルから取得したものです)
$file = Input::file('file');
$destinationPath = 'tmp/'.str_random(8);
$filename = $file->getClientOriginalName();
$upload_success = Input::file('file')->move($destinationPath, $filename);
if( $upload_success ) {
return Response::json('success', 200);
} else {
return Response::json('error', 400);
}
ただし、このコードを使用すると、次の問題が発生します。
- ドロップゾーンには、デモンストレーションにあるようなデフォルトのテキストはありません。
- 写真をドラッグすると、アップロードされて tmp フォルダーに保存されます (したがって、正しいメソッドを呼び出していることがわかります) が、デモのように緑色の成功矢印は表示されません。
- アップロードしたら、画像の下に削除できるボタンが表示されません
私はドキュメントを確認しましたが、私が知る限り、これらの項目は「そのままで動作する」はずです。これらは私が経験しているバグですか、それとも実装に失敗した設定ですか?
どうもありがとう
編集:
問題 3 を整理しました - 気づかなかったのですが、これは設定する必要のあるオプションです。この質問を見つけた人は、次のスクリプトを使用してください。
Dropzone.options.dropzone = {
addRemoveLinks: true,
};