Laravel:初始化后设置视图路径

问题描述 投票:0回答:2

Laravel 5.我想稍后设置视图的路径。但创建一个实例,以便我可以为其设置数据。

所以结果是:

$view = new View();
$view->with('key', $data);
$view->setPath($path);
$view->render();

这可能吗?

php laravel-5 view
2个回答
0
投票

不,这是不可能的。因为

Illuminate\View\View
构造函数需要
view path
作为参数。


0
投票

一种方法是创建一个简单的自定义类

View
。其内容将是:

public function __construct($data = null) {
    if ($data) {
        $this->data = $data;
    }
}

public function with($key, $val) {
    if (is_array($key)) {
        $this->data = array_merge($this->data, $key);
    } else {
        $this->data[$key] = $val;
    }
}

public function setPath($path) {
    $this->path = $path;
}

public function render() {
    return view($this->path, $this->data);
}

它允许管理视图流。

© www.soinside.com 2019 - 2024. All rights reserved.