zoukankan      html  css  js  c++  java
  • 学习坤哥的replaceTpl方法

    学习坤哥的方法之后自己写的replaceTpl

    function replaceTpl(tpl, data){///////////////没有传入可让用户自己定义的方式进行替换,不够灵活
                    var reg = /{([^}*])}/g,
                        trim = String.trim || function(str){
                            str = str.replace(/^s+|s+$/g, "");
                            return str;
                        }
                    tpl = tpl.replace(reg, function(str, key){///////////str,key是replace方法自动传入的,str是reg匹配的字符串,

                              ////key是第一个捕获组捕获的字符串,还可以传入第二、三,,,个捕获组捕获的字符串
                        str = data[trim(key)];  ///////////////多次的赋值使代码繁琐
                        return str;
                    });
                    return tpl;
                }

    坤哥的replaceTpl

    replaceTpl: function (tpl, data, label) {
            var t = String(tpl),/////////////////不明白为什么要进行这一步处理。
                s = label || /#{([^}]*)}/mg,
                trim = String.trim ||
                    function (str) {
                        return str.replace(/^s+|s+$/g, '')
                    };
            return t.replace(s, function (value, name) {
                //从模板获取name,容错处理
                return value = data[trim(name)];
            });
        }

  • 相关阅读:
    vue 根据时间时间区间搜索功能
    vue 分页
    ubuntu18 vscode ros 配置
    在ubuntu16上用vscode编译ros历程记录
    word:页眉头部出现一条横线
    word:设置基偶页不同和页眉页脚
    多级标题
    添加论文应用
    添加论文尾注2(交叉引用)
    三线表
  • 原文地址:https://www.cnblogs.com/charling/p/3332188.html
Copyright © 2011-2022 走看看