如何将值从控制器内部的函数传递到render()?

例如:

class NewClass extends Component
{
   // $a is being passed in. Already defined
   public function DoSomething($a){
      return $a;
   }

   public function render()
   {
      return view('FirstPage', [
       'posts' => NewModel::
       // HOW TO PASS IN value of $a
       where('Value1', '=', $a)
  ]);
 }
}

编辑: 我不知道如何在where()中调用DoSomething方法,因为render()中没有定义$a.

推荐答案

必须将值存储在类属性或变量中,才能在render()方法中访问.

class NewClass extends Component {
    // Declare a class property to hold the value of $a
    protected $a;

    public function DoSomething($a){
        // Assign the value of $a to the class property
        $this->a = $a;

        return $a;
    }

    public function render()
    {
        return view('FirstPage', [
            'posts' => NewModel::where('Value1', '=', $this->a)->get()
        ]);
    }
}

Laravel相关问答推荐

Laravel FAKER语法

Laravel 联合和分页

Laravel Eloquent查询与集合优化

laravel vue 惯性分页器删除上一个和下一个链接

导出所有客户端不起作用,文件保存时没有名称和扩展名

如何在自引用表上使用 Laravel 的 hasManyThrough

Laravel 6 Passport 在错误的凭证上返回 400 Bad request

在Laravel 5中通过ID和所有递归获取记录

使用 Laravel 限制多态多对多关系中的相关记录

Laravel Input:all() 忽略禁用的输入

Laravel 干预图像 GD 库扩展

如何在 Laravel 中为模型命名,以免与现有类发生冲突?

将非框架 PHP 项目移植到 Laravel 4.x

如何在 Laravel 5 中验证当前、新密码和新密码确认?

Auth 在 Laravel Tinker 中不起作用

Laravel / Eloquent内存泄漏重复检索相同的记录

如何在 vs 代码中自动导入 laravel 类

判断行是否存在,Laravel

Laravel 部署……有标准的方式吗?

你如何在 Laravel 5.3 的新通知服务生成的Electron邮件中添加图像?