Function 拉维叶函数

Function 拉维叶函数,function,laravel,blade,Function,Laravel,Blade,在我的Laravel应用程序的视图中,我希望在每个表格单元格中显示不同的背景 想象 <td> switch($product->number) @case('1') "red" @break; [...] @case('100') "green" @break; @endswitch </td> 开关($product->number) @案例(“1”) “红

在我的Laravel应用程序的视图中,我希望在每个表格单元格中显示不同的背景

想象

<td>
  switch($product->number)
      @case('1')
        "red"  
       @break; 
    [...]
  @case('100')
        "green"  
       @break; 
  @endswitch
</td>

开关($product->number)
@案例(“1”)
“红色”
@中断;
[...]
@案例('100')
“绿色”
@中断;
@终端开关
因此,当我必须对一行中的每个单元格执行此操作时,我想知道如何调用视图中返回颜色的函数


(我知道用js在客户端做会更快,但我只是想知道。)

写一个助手怎么样?您可以这样在刀片中调用它:

{!!\App\Library\TableHelper::colorText($product->number)!!}
在我放在app/Library下的助手中:


首先定义颜色数组并分配给视图

$colors = [1 => 'red', 2 => 'green', 3 => 'blue', 4 => 'gray'];
return $this->view('template', ['colors' => $colors]);
然后你可以进入模板

<td>
    {{ array_get($colors, $product->number) }}
</td>

{{array_get($colors,$product->number)}
我不知道颜色是否是预先定义的。也许这种方式正是您想要的。

在实现方面“更快”,在渲染方面可能不是这样;)我认为您只需要为每个单元格重复代码或生成一个外部循环。此时,您的代码和解释太少,无法给出可能的解决方案。我建议你再详细说明一下。
<td>
    {{ array_get($colors, $product->number) }}
</td>