赞
踩
Vue组件可能存在多个实例,JS 里对象是引用关系,如果使用对象形式定义data,则会导致它们共用一个data对象,那么状态变更将会影响所有组件实例,这是不合理的;采用函数形式定义,每个实例中的data都因为函数有了自己的作用域,互不干扰。有效规避多实例之间状态污染问题。而在Vue根实例创建过程中则不存在该限制,也是因为根实例只能有一个,不需要担心这种情况。
keep-alive 是 Vue 内置的一个组件,可以使被包含的组件保留状态,避免重新渲染 ,其有以下特性:
o 一般结合路由和动态组件一起使用,用于缓存组件;
在项目中的应用场景:
o 提供 include 和 exclude 属性,两者都支持字符串或正则表达式, include 表示只有名称匹配的组件会被缓存,exclude 表示任何名称匹配的组件都不会被缓存 ,其中 exclude 的优先级比 include 高;
o 对应两个钩子函数 activated 和 deactivated ,当组件被激活时,触发钩子函数 activated,当组件被移除时,触发钩子函数 deactivated。
https://segmentfault.com/a/1190000002792608?utm_source=sf-related
作用域链的用途:保证对执行环境有权访问的所有变量和函数的 有序 访问。
作用域链是由一个一个变量对象链接起来的一个链,整个作用域链构成了当前执行环境中变量和函数可访问的范围,即作用域。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。