今回はファイルダウンロードリンクをコピーするボタンを作ります。
1.Route
web.php
Route::get('files/uploadedfiles/{name}', 'FilesController@copy')->name('copyfile');
2.ボタン
home.blade.php
<input value="{{ route('copyfile', $file->id)}}" id="copy_{{ $file->id }}" type="text">
<button value="copy" class="btn btn-link" onclick="copyToClipboard('copy_{{ $file->id }}')">Copy!</button>
3.Controller App->Http->Controllers->FilesController.php に
FilesController.php
public function copy($url)
{
return Storage::url('/files/uploadedfiles/' . $url->name);
}
4.Javascript を view ファイルに入れる
home.blade.php
function copyToClipboard(id) {
document.getElementById(id).select();
document.execCommand('copy');
}
以上です。