

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>模板引擎</title>
  <meta name="renderer" content="webkit">
  <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
  <link rel="stylesheet" href="../../../layuiadmin/layui/css/layui.css" media="all">
  <link rel="stylesheet" href="../../../layuiadmin/style/admin.css" media="all">
</head>
<body>

  <style>
    .site-demo-laytpl{text-align: center;}
    .site-demo-laytpl textarea,
    .site-demo-laytpl div span{width: 40%;  padding: 15px; margin: 0 15px;}
    .site-demo-laytpl textarea{height: 300px; border: none; background-color: #3F3F3F; color: #E3CEAB; font-family: Courier New; resize: none;}
    .site-demo-laytpl div span{display: inline-block; text-align: center; background: #101010; color: #fff;}
    .site-demo-tplres{margin: 10px 0; text-align: center}
    .site-demo-tplres .site-demo-tplh2,
    .site-demo-tplres .site-demo-tplview{display: inline-block; width: 50%;}
    .site-demo-tplres h2{padding: 15px; background: #e2e2e2;}
    .site-demo-tplres h3{font-weight: 700;}
    .site-demo-tplres div{padding: 14px; border: 1px solid #e2e2e2; text-align: left;}
  </style>

  <div class="layui-card layadmin-header">
    <div class="layui-breadcrumb" lay-filter="breadcrumb">
      <a lay-href="">主页</a>
      <a><cite>组件</cite></a>
      <a><cite>模板引擎</cite></a>
    </div>
  </div>
  
  <div class="layui-fluid">
    <div class="layui-row layui-col-space15">
      <div class="layui-col-md12">
        <div class="layui-card">
          <div class="layui-card-header">在线调试</div>
          <div class="layui-card-body">
            <div class="site-demo-laytpl">
        
              <div>
                <span>数据</span>
                <span>模版</span>
              </div>
            
              <textarea class="site-demo-text" id="data">
      {
        "title": "Layui常用模块"
        ,"list": [
          {
            "modname": "弹层"
            ,"alias": "layer"
            ,"site": "www.baidu.com"
          }
          ,{
            "modname": "表单"
            ,"alias": "form"
          }
          ,{
            "modname": "分页"
            ,"alias": "laypage"
          }
          ,{
            "modname": "日期"
            ,"alias": "laydate"
          }
          ,{
            "modname": "上传"
            ,"alias": "upload"
          }
        ]
      }
              </textarea>
            
              <textarea class="site-demo-text" id="tpl">
      <h3>{{ d.title }}</h3>
      <ul>
      {{#  layui.each(d.list, function(index, item){ }}
        <li>
          <span>{{ item.modname }}</span>
          <span>{{ item.alias }}：</span>
          <span>{{ item.site || '' }}</span>
        </li>
      {{#  }); }}
       
      {{#  if(d.list.length === 0){ }}
        无数据
      {{#  } }} 
      </ul>
              </textarea>
          </div>
          <div class="site-demo-tplres">
            <h2 class="site-demo-tplh2">视图结果</h2>
            <div class="site-demo-tplview" id="view"></div>
          </div>
          
        </div>
      </div>

    </div>
  </div>
  
  <script src="../../../layuiadmin/layui/layui.js"></script>  
  <script>
  layui.config({
    base: '../../../layuiadmin/' //静态资源所在路径
  }).extend({
    index: 'lib/index' //主入口模块
  }).use(['index', 'laytpl'], function(){
    var laytpl = layui.laytpl;
  
    var view = document.getElementById('view')
    ,controller = function(){
      try{
        var html = laytpl(tpl.value).render(JSON.parse(data.value));
        view.innerHTML = html;
      } catch(e){
        view.innerHTML = '<span style="color: #c00;">'+ e.toString() + '</span>';
      }
    };
    
    controller();
    
    layui.each(document.getElementsByTagName('textarea'), function(index, item){
      item.onkeyup = function(){
        controller();
      }
    });
  
  });
  </script>
</body>
</html>