今天我们讲讲项目中实战就是文字展开收起组件的实现过程,讲解这个就是为了让多给大家一个思路,想法。 简单来说文字展开收起组件产生的需求背景,就是为省略显示,然后有展开收起的按钮可以操作。我们看显示效果上图: 上图是文字收起的图示,超过一定的字数那就收起省略显示,并出现查看全部按钮。 上图显示的就是操作了查看全部按钮之后,文字需要全部显示出来并有收起按钮。还是来看一张gif图的显示最后该组件...
之前我们讲过template转成AST(抽象语法树),现在我就继续对模型树优化,进行静态标注。这要如何实现? 在源码的注释中我们找到了下面这段话: /** * Goal of the optimizer: walk the generated template AST tree * and detect sub-trees that are purely static, i.e. part...
我们现在讲讲冻结JS对象方法技术吧,下面举例相关代码。我们一起来学习学习吧! 冰封的美人——冻结JS对象 现在我们了解下JS对象 js对象是普通对象,键值对方式,且其属性不加引号,表示方法如下,对象内有对象属性,对象方法和普通的对象概念相同 varobj={ name:"cxy", age:"18" } 要是只是修改对象的属性,ob...
我们现在要讲述的是当解析器遇到一个文本节点时会如何为文本节点创建元素描述对象,那又该作何处理。 parseHTML(template,{ chars:function(){ //... }, //... }) chars源码: chars:functionchars(text){ if(!currentParent){ { if(text===templ...
本篇文章主要讲述JS中let与const命令使用,通过代码展示给各位。 let命令 基本使用 在ES6中,let命令是新增的声明变量,与var的差异在于let无法重复声明,且let有效只是在其命令的代码块内,let禁止变量出现变量提升现象,let的特点就是通过暂时性死区的方式来避免程序上的错误 代码块:使用{}包括起来的内容 声明变量:分配一个存储空间 不可重复声明:let声明过后...