如何在php胡子中访问当前上下文作为函数?

时间:2013-11-06 17:57:53

标签: php mustache mustache.php

现在我的胡子模板中有这样的东西:

{{#render}}{{widget}}{{/render}}

我有一个包含以下代码的viewModel:

public function render() {
    $View = $this->_View;
    return function($widgetName, Mustache_LambdaHelper $helper) use (&$View) {
        $widget = $helper->render($widgetName);
        return $helper->render($View->mustache->getPartialsLoader()->load("$widget.view"));
    };
}

我想你可以看到我在这里要做的事情。我试图在当前上下文的widget-key中呈现一个部分名称。

现在问题是,我真的不喜欢我在模板中使用的格式。我更愿意,如果我能写出这样的东西:

{{renderWidget}}

然后我需要能够以某种方式直接访问当前上下文。

public function renderWidget() {
    return function($context) {
        return $helper->render($View->mustache->getPartialsLoader()->load("$context[widget].view"));
    }
}

有人可以告诉我这种情况是否可行?

0 个答案:

没有答案