v-if会在切换过程中销毁和重建条件块的事件监听器和子组件。如果初始条件为假,它将不做任何事情,直到条件第一次为真。该模块将不会被渲染。v-show只是基于css的切换,不管初始条件是什么,都会被渲染。所以v-if切换的开销更大,v-show初始化渲染的开销更大。当需要频繁切换,或者需要切换的dom部分非常复杂时,使用v-show比较合适。很少在渲染后切换,使用v-if更合适。

v-if会在切换过程中销毁和重建条件块的事件监听器和子组件。如果初始条件为假,它将不做任何事情,直到条件第一次为真。该模块将不会被渲染。v-show只是基于css的切换,不管初始条件是什么,都会被渲染。所以v-if切换的开销更大,v-show初始化渲染的开销更大。当需要频繁切换,或者需要切换的dom部分非常复杂时,使用v-show比较合适。很少在渲染后切换,使用v-if更合适。