Laravel-excel: 合并单元在3.0版本中不起作用

创建于 2018-09-24  ·  3评论  ·  资料来源: Maatwebsite/Laravel-Excel

版本号

  • PHP版本:7.2
  • Laravel版本:5.6
  • 套件版本:3.0

描述

重现步骤

公共功能机械Export()
{

    return Excel::download(new MachineryExport, 'machinery.csv');
}

我的机械出口看起来像

class MachineryExport implements FromView
{
    /**
     * <strong i="17">@return</strong> \Illuminate\Support\Collection
     */
    public function view(): View
    {
        return view('export.machinery', [
            'equipments' => MachineryEquipment::get()
        ])->mergeCells('A1:E1');
    }
}

我想合并单元格A1和A2,但我不能,colspan和行跨度也不起作用

question

最有用的评论

@kevinRR ,您在哪里找到这种语法的? 3.0没有mergeCells方法,而Laravel的view()帮助器也没有。

在软件包的当前状态下,您必须遵循扩展文档(https://laravel-excel.maatwebsite.nl/3.0/exports/extending.html#events)并使用本机->mergeCells('A1:E1')方法PhpSpreadsheet。 您正在寻找AfterSheet事件。

AfterSheet::class => function(AfterSheet $event) {
    $event->sheet->getDelegate()->mergeCells('A1:E1');
 },

所有3条评论

@kevinRR ,您在哪里找到这种语法的? 3.0没有mergeCells方法,而Laravel的view()帮助器也没有。

在软件包的当前状态下,您必须遵循扩展文档(https://laravel-excel.maatwebsite.nl/3.0/exports/extending.html#events)并使用本机->mergeCells('A1:E1')方法PhpSpreadsheet。 您正在寻找AfterSheet事件。

AfterSheet::class => function(AfterSheet $event) {
    $event->sheet->getDelegate()->mergeCells('A1:E1');
 },

这是我的导出文件,因此当我从导出文件传递到视图时,如何合并单元格

public function view(): View
    {
        return view('export.machinery', [
            'equipments' => MachineryEquipment::get()
        ]);
    }

我在先前的评论中为您提供了解决方案。

此页面是否有帮助?
0 / 5 - 0 等级