如何将对象加载到 Laravel 5.5 Mailable 中?

How to load object into Laravel 5.5 Mailable?

我正在尝试为 Laravel 5.5 应用程序测试可邮寄 class,并且似乎遵循了所有指示 here

我一直在尝试 preview my mailable in the browser,但由于某种原因,我传递给可邮寄 class 的对象没有正确传递,并且在可邮寄 [=] 中显示为 null 27=] 尽管我可以看到它存在于它之外。

这是我的 web.php 文件中用于在浏览器中测试可邮寄功能的函数:

Route::get('/testingMailable', function () {
    $review = App\EvaluationReview::find(6);
    return new App\Mail\StartReview($review);
});

对象正在按上面的方式填充,但是当我尝试在可邮寄的 class 中查看它时,它为空:

<?php

namespace App\Mail;

use App\EvaluationReview;
use Illuminate\Bus\Queueable;
use Illuminate\Mail\Mailable;
use Illuminate\Queue\SerializesModels;
use Illuminate\Contracts\Queue\ShouldQueue;

class StartReview extends Mailable
{
    use Queueable, SerializesModels;

    public $review;

    public function __construct(EvaluationReview $review)
    {
        $this->$review = $review;
        dd($this->review);//is null
    }

    public function build()
    {
        return $this->from('test@test.com')->view('startReview');
    }
} 

有谁知道为什么对象没有传递到可邮寄的 class?

您的代码有错别字。

变化:

    $this->$review = $review;

收件人:

    $this->review = $review;