zoukankan      html  css  js  c++  java
  • 模板引擎的应用

    1.模板字符串
     var stu = {
                name : "lida",
                age : 23,
                place : "北京市朝阳区",
                work : "设计"
            }

            // ES5之前拼接的字符串
            //     1.拼接太麻烦 需要多次分割 不便于维护
            //     2.所有拼接的字符串只能一行显示
            document.querySelector("p").innerHTML = "我叫" + stu.name + "我今年" + stu.age + "岁" + "我住在" + stu.place + "我的工作是" + stu.work;

            // 模板字符串 所有的内容写在反引号(``)里面 然后变量放在${}里面
            document.querySelector("p").innerHTML = `我叫${stu.name},我今年${stu.age}岁,我住在${stu.place},我的工作是${stu.work}`;

            // 在${}可以放在任意的JS表达式 可以进行运算
            function age(num){
                return num + 1;
            }

            document.querySelector("p").innerHTML = `我叫${stu.name},我今年${stu.age}岁,我住在${stu.place},我的工作是${stu.work}`;

            var say = "say";
            console.log(say[0]);
            say[0] == "sayhi";
            console.log(say);   //say


    2.模板引擎
    //
    页面渲染使用字符串拼接 会存在问题 : 字符的恒定性 字符串拼接的时候容易出错 // 模板引擎不用拼接字符串 直接使用 静态页面里面的html里面的结构生成模板 需要渲染的时候直接调用 // 模板引擎的实现方式有很多,最简单的是“置换型”模板引擎,这类模板引擎只是将指定模板内容(字符串)中的特定标记(子字符串)替换一下便生成了最终需要的业务数据(比如网页)。 // 模板引擎使用步骤 : // 1. 导入模板引擎 // 2. 准备一个模板 // 1. 准备模板必须要是用script 模板引擎规定的只能使用script // 2. 必须要给他一个id 在调用方法的时候使用 // 3. 必须要有type属性 而且type属性绝对绝对不能使text/javascript // 3. 调用方法 生成html结构 // 注意点 : // 1. 挖坑的时候 一定要注意 坑的名字一定要和对象的属性名一直 // 2. type的值只要不是text/javascript 但是建议使用text/html 因为其他的没办法识别标签 // 3. <% = %> 必须是一个完整的整体 不能加空格 或者其他的符号  
          
    var stu = {
                name : "Lisa",
                age : 18
            }

            var html = template("tpl", stu);
           

            var sa = {
                xingming : "黑龙江",
                age : 16
            }

            html += template("tpl", sa);
            console.log(html);
            
            document.body.innerHTML = html;


            var arr = [
            {
                name : "Divo",
                age : 18
            },
            {
                name : "Mary",
                age : 15
            },
            {
                name : "舞蹈",
                age : 18
            }
            ]        
        3.模板引擎的内部循环

        
    <script src="./template-web.js"></script>
          <script type="text/html" id="tpl">
              <%for (var i = 0; i < list.length;i++){ %>
                  <h1>自我介绍</h1>
                  <p>大家好,我叫<%= list[i].name %>,我今年<% if(list[i].age > 20) { %>
                    <u>成年</u>
                    <% } else { %>
                        <u>未成年</u>
                    <% } %>
                </p>
                <% } %>
        </script>
    4.模板引擎的应用  <%= %>容易丢失符号 用{{}}来代替
    <script src="./template-web.js"></script>
          <script type="text/html" id="tpl">
        //直接使用{{ each list value}} 来代替 <p>大家好,我叫<%= list[i].name %>,我今年<% if(list[i].age > 20) { %> <u>成年</u> <% } else { %> <u>未成年</u> <% } %> </p> <% } %>,这种形式显得很麻烦,而且容易丢失符号,不方便查找
              {{ each list value}}      //for循环的写法
                  <h1>{{ value.title }}</h1>
                  <p>{{ value.name }} </p>
             {{ if value.age >= 18 }}  //if不需要自带的括号
                    <u>成年</u>
                    {{ else }}
                        <u>未成年</u>
                    {{ /if }}
                {{ /each }}
        </script>
  • 相关阅读:
    签字文件的保存逻辑
    POJ-1273 Drainage Ditches
    POJ-2513 Colored Sticks
    HDU-1251 统计难题
    POJ-1300 Door Man
    POJ-3159 Candies
    POJ-3169 Layout
    POJ-2983 Is the Information Reliable?
    POJ-1716 Integer Intervals
    HDU-3666 THE MATRIX PROBLEM
  • 原文地址:https://www.cnblogs.com/zycs/p/13264877.html
Copyright © 2011-2022 走看看