javascript - Handlebars 中的子串助手

标签 javascript node.js handlebars.js substring helper

我可以在 Handlebars 中编写一个助手来判断一个字符串是否是另一个字符串的子字符串吗?

我编写了以下代码,但它似乎不起作用

这是助手:

'if_sub': function(a, b, opts) {
     if (a.includes(b))
         return opts.fn(this);
     else
         return opts.inverse(this);
 }

这是实现:

{{#if_sub colvalues "success"}}
    <td class="log-success"> {{colvalues}} </td>
{{/if_sub}}

最佳答案

只是一个小错误。 if (a.includes(b)) 应该是 if (b.includes(a))

<!DOCTYPE HTML>
<html>
<head>
  <meta charset="utf-8">
  <title>How to render html with Handlebars.js</title>
  <script src="https://cdn.jsdelivr.net/handlebarsjs/4.0.3/handlebars.min.js"></script>
  <script src="http://code.jquery.com/jquery-latest.min.js"    type="text/javascript"></script>
 
  <script id="simple-template" type="text/x-handlebars-template">

      {{#if_sub colvalues "success"}}
    <td class="log-success">  {{colvalues}} </td>
      {{/if_sub}}
  </script>
  
  <script type="text/javascript">
        Handlebars.registerHelper("if_sub",function(a, b, opts) {

     if (b.includes(a)){
       return opts.fn(this);
     }
         
     else{
       return opts.inverse(this);
     }
         
 });
  
    //wait for page to load
    $(document).ready(function(){
      var raw_template = $('#simple-template').html();
      var template = Handlebars.compile(raw_template);
      var data = {colvalues:"suc"}; //change value and see.
      var html = template(data);
      $('#main').append(html);

    });
  </script>
</head>
  
<body>
<!-- Insertion point for handlebars template -->
<div id="main" style="margin-left:100px">
</div>
</body> 
</html>

关于javascript - Handlebars 中的子串助手,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40988779/

相关文章:

javascript - 如何从另一个指令访问指令的 DOM 元素?

javascript - Angularjs 和 jquery html5Loader

node.js - 来自 Node 的出站 SSL 连接

javascript - 将状态传递给 Relay 中的 getVaribles 突变

javascript - Node.js + setInterval = 连接丢失 : The server closed the connection

javascript - 如果服务器崩溃,如何跟踪用户的 "online"状态?

ember.js - 从 ember 输入中添加/删除类

javascript - 输出中的额外 <li>

dom更新后javascript不起作用

javascript - 从 JSON 对象中删除空括号