榕树贷款v-if 和v-show的区别
共同点
都能控制元素的显示和隐藏
不同点
v-show:通过css的display:none控制隐藏,只会编译一次
v-if:动态的向DOM树添加或者删除DOM元素,若初始值为false,就不会编译了
v-if不停的销毁和创建比较消耗性能。所以如果要频繁切换某节点,使用v-show(切换开销比较小,初始开销较大);如果不需要频繁的切换某节点使用就使用v-if(初始渲染开心较小,切换开销较大)
v-if和v-for的优先级
v-for优先于v-if被解析。
如果同时出现,榕树贷款每次渲染都会先执行循环再判断条件,无论如何循环都不可避免,浪费了性能。榕树贷款要避免这种情况,则在外层嵌套template,在这一层进行v-if判断,然后在内部进行v-for循环。
榕树贷款如果条件出现在循环内部,可通过计算属性提前过滤掉那些不需要显示的项。
vue组件中data为什么必须是一个函数
如果data是一个函数的话,榕树贷款这样每次复用一次组件,就会返回一个新data,类似于给每个组件实例创建一个私有的数据空间,让各个组件实例维护各自的数据。
而榕树贷款单纯的写成对象形式,就使得所有组件实例公用一份data,就会造成一个变了全部都变的结果。所以说vue组件的data必须是函数。
榕树贷款js本身的面向对象编程也是基于原型链和构造函数,应该会注意原型链上添加一般都是函数方法,而不会去添加一个对象。