参考react
官方博客,将react
放弃mixins
的设计模式的原因总结如下
-
mixins
引入了不清晰的依赖关系:
组件采用了
mixins
的state
和方法,mixins
采用了组件的方法,或者mixins
又依赖了其他的mixins
。这样导致组件和mixins
有强耦合的关系,而这些关系不是存在同一个文件中,修改组件或者修改mixins
都是非常危险的行为
-
mixins
导致命名空间的冲突:
mixins
中的state
和方法和组件或者其他mixins
的发生冲突
-
Mixins
导致滚雪球般的复杂度:
由于之前
mixins
和组件以及mixins
高度耦合,导致新的需求出现的时候,管理代码的复杂度会直线上升