Vue2混入的优先级

477 阅读1分钟

之前有被同事问过mixins优先级问题,当时就随口答了句以组件的为主,但后来细想了一下其实自己知道的还比较模糊,决定还是自己亲自码一下,结果如下:

组件与混入的优先级(同名)

生命周期钩子函数:不会覆盖方法,会按顺序执行,顺序是按照 混入beforeCreate -> 组件beforeCreate -> 混入created -> 组件created 以此类推执行的。

data:以组件data值会主。

methods、computed、watch: 以组件methods、computed、watch会主。

组件与先混入与后混入的优先级(同名)

生命周期钩子函数:顺序是按照 先混入beforeCreate -> 后混入beforeCreate -> 组件beforeCreate -> 先混入created -> 后混入created -> 组件created 以此类推执行的。

data:以组件data值会主。

methods、computed、watch: 以组件methods、computed、watch会主。

组件无同名无钩子,但先混入与后混入的优先级(同名)

生命周期钩子函数:顺序是按照 先混入beforeCreate -> 后混入beforeCreate -> 先混入created -> 后混入created 以此类推执行的。

data:以后混入data值会主。

methods、computed、watch: 以后混入methods、computed、watch会主。