1

我正在使用 RainTPL,我想知道是否可以在 draw() 方法之后更改任何变量的值

今天我的元标记都是静态的,我想让它们动态,但是我的 header.html 模板在我的类的构造函数方法中被调用,然后我想在元标记中使用的数据在我的路由中返回.

在我的构造函数(Page.php)中,我有以下代码:

$this->tpl->draw("page/header");

在我的路线中,我有以下代码:

$app->get("/products", function(){
    $products = Products::listAllProducts();
    $page = new Page();
    $page->setTpl("products/list", [
        "productsList"=>$products 
    ]);
});

我可以将整个产品列表传递给 list.html 模板,但我不能将某些信息传递给 header.html 模板,因为它已经在构造函数方法中加载。

所以我的元标签都是静态的。有什么方法可以在 draw 方法之后更改这些值?

4

1 回答 1

0

简短的回答没有。

但是,您可以将标题直接包含在模板中。然后,您将能够与主模板同时在其中设置变量。它可能是一个可选变量,不会破坏与应用程序其余部分的兼容性。

于 2020-02-05T22:00:42.757 回答