3

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

{{#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"));
    };
}

我想你可以在这里看到我想要做什么。我正在尝试渲染部分名称包含在当前上下文的小部件键中。

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

{{renderWidget}}

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

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

谁能告诉我这是否可能以一种或另一种方式?

4

0 回答 0