Vue的基础理解(八)
<h4>为什么会出现vue修改数据后页面没有刷新的问题?</h4>
<ul>
<li>受ES5的限制,Vue不能检测对象的属性的添加和删除</li>
<li>Vue.js 在初始化实例时将属性转为 getter/setter,所以属性必须在 data 对象上才能让 Vue.js 转换它,才能让它是响应的。</li>
</ul>
<hr />
<h4>第一次页面加载会触发哪几个生命周期?</h4>
<ul>
<li>4个生命周期 : beforeCreate - created - eforeMount - mounted</li>
</ul>
<hr />
<h4>computed和watch有什么区别?</h4>
<ul>
<li>
<p>computed:</p>
<ul>
<li>是计算属性,也就是计算值,他更多适合计算值的场景。</li>
<li>具有缓存性,computed的值在getter执行过成后会缓存的,只有在他依赖的属性值改变之后,下一次获取computed的值时才会重新调用对应的getter值进行计算。</li>
<li>适用于:计算比较耗性能的值的计算</li>
</ul>
</li>
<li>watch:
<ul>
<li>观察作用,类似于某些数据的监听回调。
用于观察props和$emit或者本组件的值。当数据变化时来执行回调进行后续操作。</li>
<li>无缓存性,页面重新渲染值不变化也会执行。</li>
</ul></li>
</ul>
<p>总结:
<strong>当我们要进行数值计算,而且依赖于其他数据,那么把这个数据设计为computed
如果你需要在某个数据变化时做一些事情,使用watch来观察这个数据变化</strong></p>