1

我现在有点卡住了。我想使用 Maatwerk Laravel-Excel 创建一个导出。用户必须能够设置一些过滤器。在 Vue 中,我将在选择时设置选定的值。当按下按钮时,用户必须接收下载。

在 Vue 中:

data() {
        return {
            selected: {
                manufacturers: [],
                categories: [],
                seasons: [],
                date: null
            }
        };
    },
    methods: {
        exportClick() {
            axios.post('/export/', this.selected)
            .then(function (response) {
     
            })
            .catch(function (error) {
    
            });
        },
    }

在控制器中:

public function export(Request $request)
{
    $name = "test.xlsx";
    return Excel::download(new Export($manufacturers, $categories, $seasons, $date), $name);
}

我对开发有点陌生,我不知道如何访问请求中的变量。我也想知道下载是否会从 axios 开始。有人可以帮我解决这个问题吗?

4

1 回答 1

0

要访问请求中的变量:

public function export(Request $request)
{
    // all
    $allRequests = $request->all();

    // single variable
    $date = $request->date;
}

请阅读 laravel 文档:https ://laravel.com/docs/8.x/requests#introduction

我从不在 Axios 中下载任何东西。

最简单的方法:

<a href="/download-excel" download target="__blank">Download Excel</a>

请阅读本文档: https ://docs.laravel-excel.com/3.1/exports/collection.html#downloading-a-collection-as-excel

于 2020-12-24T01:07:57.223 回答