问题描述在vue里面第一个要避免使用的就是eventBus,虽然它很方便,但是它带来的后果是更加严重的,可能引发很多难以查找的bug。第二个就是watch。当一个组件内有多个watch的情况下,很可能就会发生这么一种情况,不知道是哪个watch引起的bug,不知道是谁触发了watch。所以,我感到很疑惑!在vue中如何优雅的使用watch?以及watch设计的初衷是什么?既然是数据驱动的框架,不应该是通过数据变化引起组件变化吗?而像watch这种监听数据变化这种方式是不是应该被剔除?
2 回答
繁星点点滴滴
TA贡献1803条经验 获得超3个赞
你这些问题真的很难回答,昨天我看到一句话,不能问一个技术的设计目的是什么,而是要问,我遇到了哪些问题,有哪些技术可以解决我的问题?当代的软件框架基本都是建立在软件设计模式这个思维范畴内的,那么watch从语义和实际用途分析,显然是一种观察者模式。那么观察者模式本来就是应用于谁对变化的状态感兴趣,谁去“观察”这个状态。在某些情况下,确实需要跟踪观察值的变化,确实要知道变化前的值和变化后的值,那么就需要使用watch。如果题主遇到了上面的问题,那么可以尝试watch。
添加回答
举报
0/150
提交
取消