码迷,mamicode.com
首页 > 其他好文 > 详细

(十)硅谷外卖前端部分-HeaderTop 组件

时间:2019-06-07 20:52:39      阅读:100      评论:0      收藏:0      [点我收藏+]

标签:ack   styles   comm   注册   common   span   header   slot   name   

一、说明

  1. 此组件会使用到 slot 进行组件间通信
  2. slot 通信是标签, 而不是单纯的数据

二、components/HeaderTop/HeaderTop.vue

<template>
  <!--首页头部-->
  <header class="header">
    <slot name="search"></slot>
    <span class="header_title">
      <span class="header_title_text ellipsis">{{ title }}</span>
    </span>
    <slot name="login"></slot>
  </header>
</template>

<script>
  export default {
    name: HeaderTop,
    props: {
        title: String
    }
  }
</script>

<style lang="stylus" rel="stylesheet/stylus">
  @import "../../common/stylus/mixins.styl"
  .header
    background-color #02a774
    position fixed
    z-index 100
    left 0
    top 0
    width 100%
    height 45px
    .header_search
      position absolute
      left 15px
      top 50%
      transform translateY(-50%)
      width 10%
      height 50%
      .icon-sousuo
        font-size 25px
        color #fff
    .header_title
      position absolute
      top 50%
      left 50%
      transform translate(-50%, -50%)
      width 50%
      color #fff
      text-align center
      .header_title_text
        font-size 20px
        color #fff
        display block
    .header_login
      font-size 14px
      color #fff
      position absolute
      right 15px
      top 50%
      transform translateY(-50%)
      .header_login_text
        color #fff
</style>

三、Msite.vue

<HeaderTop title="昌平区北七家宏福科技园(337 省道北)">
  <router-link slot="search" to="/search" class="header_search">
    <i class="iconfont icon-sousuo"></i>
  </router-link>
  <router-link slot="login" to="/login" class="header_login">
    <span class="header_login_text">登录|注册</span>
  </router-link>
</HeaderTop>

<script>
  import HeaderTop from ../../components/HeaderTop/HeaderTop

  export default {
    name: Msite,
    components: {
        HeaderTop
    }
  }
</script>

四、Search.vue

<HeaderTop title="搜索"></HeaderTop>

<script>
  import HeaderTop from ../../components/HeaderTop/HeaderTop

  export default {
    name: Search,
    components: {
        HeaderTop
    }
  }
</script>

五、Order.vue

<HeaderTop title="订单列表"></HeaderTop>

<script>
  import HeaderTop from ../../components/HeaderTop/HeaderTop

  export default {
    name: Order,
    components: {
        HeaderTop
    }
  }
</script>

六、Profile.vue

<HeaderTop title="我的"></HeaderTop>

<script>
  import HeaderTop from ../../components/HeaderTop/HeaderTop

  export default {
    name: Profile,
    components: {
        HeaderTop
    }
  }
</script>

(十)硅谷外卖前端部分-HeaderTop 组件

标签:ack   styles   comm   注册   common   span   header   slot   name   

原文地址:https://www.cnblogs.com/mxsf/p/10989129.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!