【问题标题】:How to change mustache template data dynamically如何动态更改胡子模板数据
【发布时间】:2012-07-13 05:23:52
【问题描述】:

我刚刚开始使用 Mustache 模板引擎。我目前正在使用它的 PHP 实现(https://github.com/bobthecow/mustache.php/wiki)。我正在使用助手来操作数据的呈现方式。

$data = array("name" => "abhilash"); $template = "你好{{name}},{{#bold}}欢迎{{/bold}}"; $m = 新的 Mustache_Engine(数组( “帮手” => 数组( “粗体” => 功能($内容){ 返回“$内容&gt”; }))); $html = $m->render($template, $data);

借助它,我可以用粗体字呈现“欢迎”。我想知道是否可以在辅助函数的帮助下操作$data。例如,如果模板如下所示,并且我有一个注册为dataSource 的辅助函数,我想用它从datasource_func_name() 收集一些数据(比如键值对)并将其附加到$data。 {{#dataSource}}datasource_func_name{{/dataSource}} 嗨{{name}}

【问题讨论】:

    标签: php templates helper mustache


    【解决方案1】:

    这通常不是您使用助手的方式。但是,Mustache 基本上期望一个数据源,那为什么不直接注入呢?

    $html = $m->render($template, $dataSource);
    

    【讨论】:

    • 嗨 Laurent,我知道它不是为了提供数据源。实际上我正在尝试构建一个框架(其中 mustache 负责呈现数据)。在其中,我想添加对模板的支持以指示数据源模块名称,并且框架将负责从该数据源收集数据并将其反馈给模板。我认为在不修改 Mustache 代码的情况下使用 helpers 会是一种更好的方法。
    • 他在告诉你怎么做 :) Mustache 不应该获取数据。应该获取数据并将其提供给 mustache。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-08
    • 2015-02-22
    • 1970-01-01
    • 2011-10-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多