有赞商城总结

首页

  1. ul列表触底加载更多数据
    使用外部UI库mint-uiinfinite-scroll无限滚动指令,实质就是滚动距底部一定距离,执行方法进行数据请求。
  2. Foot组件的点击切换和跳转其他页面
  • Foot组件底部导航图标.active切换
    遍历列表生成底部导航图标,通过location.search拿到查询参数,qs.parse( )解析得到CurIndex(默认初始值0),动态绑定class通过index==CurIndex判断是否激活active类。
  • 点击跳转
    click后,把点击图标的index作为查询参数放到location.href上实现跳转。
methods: {
    changeNav(list, index) {
      location.href = `${list.href}?index=${index}`;
    }
}

列表页(search.html)

  1. top按钮显现
    监听touchmove事件,document.doucumentElement.scrollTop > 200显现
  2. 点击top按钮滚动到顶部的过渡效果
    使用第三方库velocity-animate
import Velocity from 'velocity-animate'

toTop(){
  Velocity(document.body,"scroll",{duration: 1000})
}

vue组件通信的方式

  1. down-props
  2. 自定义事件 $emit()
  3. 全局事件bus
  4. vuex 状态管理

个人主页/收货地址管理

  1. 路由配置
    嵌套路由,在个人主页里面还嵌套有子路由
let routes = [{
  /* 路由配置 */
  path:'/',
  component: member,
},{
  path: '/address',
  component: address,
  /* 嵌套路由 */
  children:[{
    path: '',
    redirect: 'all' /* 重定向跳转到/all */
  },{
    name:'all',
    path:'all',
    component:all,
  },{
    name: 'form',
    path:'form',
    component:form,
  }]
}]
  1. 路由跳转的方式
  • 声明式导航 (router-link 动态绑定to属性)
    <router-link :to="{name:'form' ,query:{type:'add'}}">
  • 编程式导航(this.$router
    除了使用<router-link>创建 a 标签来定义导航链接,我们还可以借助 router 的实例方法,在 Vue 实例内部,你可以通过$router访问路由实例
toEdit(list){
  // this.$router.push({path:'/address/form'})
  // 编程式导航
  this.$router.push({name:'form',query:{
      type: 'edit',
      instance: list,
  }})
},
  • 总结:
    不论是声明式导航还是编程式导航,获取路由跳转后的参数都是this.$route
    3. vuex状态管理
    地址列表的初始化,添加,删除,更新,设为默认地址都是通过vuex仓库状态管理。
    创建一个store包含三部分
const store = new Vuex.Store({
  state:{
    lists: null,
  },
  mutations:{
    // 同步操作
    init(state,lists){
      state.lists = lists
    }
  },
  actions:{
    // 异步操作
    getLists(){
      axios.get(url.addressLists).then(res=>{
        // commit触发传入数据,触发init方法
        store.commit('init',res.data.lists)
      })
    }
}
  • state
    获取状态对象,通过this.$store.state获取
  • mutations
    直接修改state,但是只能是同步操作,通过this.$store.commit执行。
  • actions
    通过commit mutations 间接的修改state,可以包含异步操作, 通过this.$store.dispatch调用。
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,636评论 5 468
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,890评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,680评论 0 330
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,766评论 1 271
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,665评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,045评论 1 276
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,515评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,182评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,334评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,274评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,319评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,002评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,599评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,675评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,917评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,309评论 2 345
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,885评论 2 341

推荐阅读更多精彩内容

  • vue-cli搭建项目 确保安装了node与npm 再目标文件夹下打开终端 执行cnpm i vue-cli -g...
    Akiko_秋子阅读 3,209评论 1 22
  • 渲染函数和jsx 在vue中我们可以不用template来指定组件的模板,而是用render函数来创建虚拟dom结...
    6e5e50574d74阅读 709评论 0 0
  • Vuejs技术栈知识点小结 阅读目录 前言 Vue vue-router vuex 前言 上家公司的项目主要是使用...
    yichen_china阅读 877评论 0 0
  • 一:什么是闭包?闭包的用处? (1)闭包就是能够读取其他函数内部变量的函数。在本质上,闭包就 是将函数内部和函数外...
    xuguibin阅读 9,479评论 1 52
  • vuex 场景重现:一个用户在注册页面注册了手机号码,跳转到登录页面也想拿到这个手机号码,你可以通过vue的组件化...
    sunny519111阅读 8,005评论 4 111