绑定的字段名 {{ t }} 值是 {{ v }}
var _node = document.querySelector('[data-js=node]'); var _data = { t: 't', v: '' }; // 通过Proxy响应数据变化 _data = new Proxy(_data, { set: function (target, property, value) { target[property] = value _node.render(_data) } }); // 模版方法 _node.template = _node.innerHTML // 渲染方法 _node.render = function (data) { // 正则匹配模版中对应数据并更新 this.innerHTML = this.template.replace(/\{\{\s?(\w+)\s?\}\}/g, function (match, variable) { return data[variable] }) }