结构html
规范vue
每一个页面仅容许一组基础布局,这为组件加载、交互、分层提供挂载、容器等基础。webpack
缘由web
若是出现多套,将会影响公共组件引入的准确性和灵活性;也会影响功能的扩展等。vuex
示例:totop组件数组
从引入组件的角度上看,做为一个基础浮动的工具组件,不该该关注实际业务及根插销,直接动态加载到基础布局当中便可。若是有多个嵌套的基础布局,将须要更多的代码,来辨别其插入点,也会失去灵活性,因此从组件的角度,惟一布局很重要。数据结构
从功能角度上看,它须要监控页面的滚动位置,在这种布局下,其须要监控content的位置状况,若是出现多个基础布局,将影响功能的使用。异步
加载方式模块化
a、业务组件:可根据业务需求选择相应加载方式;工具
b、基础组件:尽可能使用动态加载的方式,如popup、pick、loading这些浮层组件。其优点以下:
数据流
如何区分业务组件和基础组件:以地址picker为例。其首先是基础的picker组件,可实现多列滚动,每次滚动都会产生一个惟一的结果数组,确认之后,返回该结果数组。该基础picker组件能够扩展成动态请求数据的地址picker,也能够是固定值的多级picker,到底须要哪一种,就与业务相关。所以,地址picker,是对基础组件picker的扩展,其包含数据流的存取过程,及数据流的交互,异步请求等。
组件升级
叠层的定义 公共组件,能够根据给出的z-index规范,给出组件的z-index叠层id;但其取值尽可能在该组件类型叠层规范数值范围的中间值,便于同类型业务组件的向下向上叠层处理。