Day 5
1 最完美的解决方案,解决轮播图问题。
watch + nextTick : 数据监听:监听已有数据变化
$nextTick :在下次DOM 更新 循环结束之后 ,执行延迟回调。在 修改数据之后,立即使用这个方法,获取更新后的 DOM。
$nextTick :可以保证页面中的结构一定是有的,经常和很多插件一起使用【都需要DOM存在了】
2 开发 floor 组件
切记,仓库当中的state的数据格式,不要乱写,数据的格式取决于服务器返回的数据。
(1)getFloorList这个action 在哪里触发?是需要在 Home 路由组件当中发的,不能再Floor组件内部发action,因为我们需要 v-for 遍历floor 组件
(2)v-for 也可以在自定义标签当中使用
(3)组件通信的方式有哪些?面试频率极高
props:用于父子组件通信
自定义事件:$on $emit 可以实现子给父通信
全局事件:$bus 全能
pubsub-js : vue 当中几乎不用 全能
插槽
vuex
3 把首页当中轮播图拆分为一个公用全局组件。
切记:以后再开发项目的时候,如果看到某一个组件在很多地方都使用,你把它变成全局组件。
注册一次,可以在任意地方使用,共用的组件 | 非路由组件放到 components 文件夹中
4 Search 模块的开发
(1)先静态页面 + 静态组件拆分出来
(2)发请求(API)
(3)Vuex(三连环)
(4)组件获取仓库数据,动态展示数据
复习:
(1)Search 模块需要的服务器数据,我们已经请求到,而且存储于 vuex 仓库当中,而且有一些数组数据【我们已经通过 getters】进行简化
切记:getters 简化数据而生
(2)商品列表、平台售卖的属性已经动态数据(来自于服务器数据)