3个vue技巧分享

一、observable轻量化状态管理


observable轻量化状态管理,不能在vue serve Home.vue状态下执行,必须在npm run serve状态

Home.vue

// Home.vue
   
      

observable.js

import Vue from 'vue';

export let store = Vue.observable({ count: 0, name: '李四' });
export let mutations = {
    setCount(count) {
        store.count = count;
        console.log('count:', store.count)
    },
    changeName(name) {
        store.name = name;
        console.log('name-in:', store.name)
    }
}

二、长列表性能优化


我们都知道vue会通过object.defineProperty对数据进行劫持,来实现视图响应数据的变化,然而有些时候我们的组件就是纯粹的数据展示,不会有任何改变,我们就不需要vue来劫持我们的数据,在大量数据展示的情况下,这能够很明显的减少组件初始化的时间,那如何禁止vue劫持我们的数据呢?可以通过object.freeze方法来冻结一个对象,一旦被冻结的对象就再也不能被修改了

3个vue技巧分享_第1张图片
另外需要说明的是,这里只是冻结了users的值,引用不会被冻结,当我们需要reactive数据的时候,我们可以重新给users赋值。
3个vue技巧分享_第2张图片

三、去除多余的样式


随着项目越来越大,书写的不注意,不自然的就会产生一些多余的css,小项目还好,一旦项目大了以后,多余的css会越来越多,导致包越来越大,从而影响项目运行性能,所以有必要在正式环境去除掉这些多余的css,这里推荐一个库purgecss,支持Webpack、CLI、JavascriptApi等多种方式使用,通过这个库,我们可以很容易的去除掉多余的css。

3个vue技巧分享_第3张图片

你可能感兴趣的:(3个vue技巧分享)