为了账号安全,请及时绑定邮箱和手机立即绑定

前端MVC,JS模板替换实现原理

我们常用的框架,比如Vue、Angular等,都有属于它们自己的表达式,比如{{}},它们的数据绑定实现原理其实是利用了正则表达式。

MVC模式

  • M model 模型 数据
  • V view 视图层
  • C control 控制器

view。注意:这里的script标签的type属性要设置为“text/html”,这样浏览器在渲染页面时不会把script标签里面的内容渲染到页面上。

<script type="text/html" id="template">
    <p>name:{{name}}</p>
    <p>age:{{age}}</p>
    <p>height:{{height}}</p>
</script>

model和control。这里的script标签里面就是我们常写的JS代码了。

<script type="text/javascript">
    // model
    var data = {
        name: "splendid",
        age: 21,
        height: 173,
        weight: 60,
        hobby: "阅读"
    };

    // control
    var mtp1 = function(tp1, data){
        var tp1 = document.getElementById(tp1).innerHTML;
        var exp = /\{\{(\w+)\}\}/g;
        while(result = exp.exec(tp1)){
            if(result[1]){
                tp1 = tp1.replace(result[0], data[result[1]]);
            }
        }
        return tp1;
    };
    document.getElementById("box").innerHTML = mtp1("template", data);
</script>
点击查看更多内容
1人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
Web前端工程师
手记
粉丝
20
获赞与收藏
150

关注作者,订阅最新文章

阅读免费教程

感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消