使用vue-cli编写外卖app【header组件(外部组件)】

Vue-resource

安装
npm install vue-resource --save
配置

【main.js】

import VueRouter from 'vue-router'

Vue.use(VueResource)
使用

【app.vue】

        this.$http.get('/api/seller').then((res) => { // 成功的回调
            res = res.body
            if (res.errno === ERR_OK) { // 验证错误码
                this.seller = res.data //赋值到data上的seller
            }
        })

外部组件

把数据传递给子组件

【App.vue】

<v-header :seller="seller"></v-header>

【header.vue】在props上注册

        props: {
            seller: {
                type: Object
            }
        }

布局及样式

为了能在不同dpi的设备上引入不同规格的图片,需要创建一个bg-image函数。

【mixin.styl】

bg-image($url)
  background-image :url($url+"@2x.png")
  @media (-webkit-min-device-pixel-ratio: 3),(min-device-pixel-ratio: 3)
    background-image :url($url+"@3x.png")

调用这个函数

【header.vue】

<style>
//.....
                    .brand
                        bg-image('brand')
<style>

因为商家有各种活动,所以不同的活动也绑定不同的样式类,对应的json如下

【data.json】

//.....
 "supports": [
      {
        "type": 0,
        "description": "在线支付满28减5"
      },
      {
        "type": 1,
        "description": "VC无限橙果汁全场8折"
      },
      {
        "type": 2,
        "description": "单人精彩套餐"
      }//.....

在【header.vue】创建时创建一个数组,数值对应类名

//...
        created() {
            this.classMap = ['decrease', 'discount', 'special', 'invoice', 'guarantee']
        }

使用时传入supports的type值

<span class="icon" :class="classMap[seller.supports[0].type]"></span>
效果图及代码

完整代码

当前截图
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 这篇笔记主要包含 Vue 2 不同于 Vue 1 或者特有的内容,还有我对于 Vue 1.0 印象不深的内容。关于...
    云之外阅读 5,187评论 0 29
  • 本文为2016年11月9日,『前端之巅』微信群在线分享活动总结整理而成,转载请在文章开头处注明来自『前端之巅』公众...
    尾尾阅读 10,883评论 3 32
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,711评论 19 139
  • 人的乐观或悲观,成功或失败,勇敢或懦弱,强壮或羸弱,十之八九与潜意识有关。潜意识之所以强大,是因为它从你一出生,便...
    鸡仔说阅读 218评论 0 0
  • 你们好 我是达浪 每个人都有故事 我希望和大家分享 我第一次写作 希望大家能点点关注 谢谢
    妖seng阅读 258评论 0 1

友情链接更多精彩内容