Vue CLI本地存储
Vue CLI应用程序通常需要与本地存储进行交互,以在应用程序中保存和检索数据。常用的本地存储方案包括:
1.localStorage:用于在浏览器中存储键值对数据。可以使用localStorage.setItem(key, value)
来存储数据,使用localStorage.getItem(key)
来检索数据
2.sessionStorage:类似于localStorage,但数据仅在当前会话期间有效。可以使用sessionStorage.setItem(key, value)
和sessionStorage.getItem(key)
来进行存储和检索
2. 自定义事件
Vue.js允许你创建和触发自定义事件,以便在组件之间进行通信,可以使用
$emit(eventName, eventData)在一个组件中触发事件,
并使用$on(eventName, eventHandler)在另一个组件中监听事件。
// 发送事件
this.$emit('custom-event', eventData);
// 接收事件
this.$on('custom-event', eventHandler);
3. 全局事件总线
场景:有时候可能需要在整个应用程序中使用事件总线来进行全局事件的订阅和发布。可以使用Vue实例作为全局事件总线:
// 在 main.js 中创建一个全局的事件总线
Vue.prototype.$eventBus = new Vue();
// 在任何组件中订阅事件
this.$eventBus.$on('global-event', eventHandler);
// 在任何组件中发布事件
this.$eventBus.$emit('global-event', eventData);
4. $nextTick
场景:Vue提供了$nextTick方法,用于在DOM更新之后执行代码。这对于在更新后操作DOM或执行其他异步操作非常有用
// 在数据更新后执行
this.$nextTick(() => {
// DOM已经更新
});
// 在watcher或computed属性内使用
this.$watch('someData', (newValue, oldValue) => {
this.$nextTick(() => {
// 执行DOM操作
});
});
5. 过渡与动画
Vue提供了过渡和动画的内置支持,使得在应用程序中添加动画效果变得简单。你可以使用组件包裹需要进行过渡的元素,并使用CSS过渡类名来定义动画效果
<transition name="fade">
<div v-if="show">Hello, world!</div>
</transition>
.fade-enter-active, .fade-leave-active {
transition: opacity 0.5s;
}
.fade-enter, .fade-leave-to {
opacity: 0;
}