0.2.5 • Published 3 years ago

mr-menu-sidebar v0.2.5

Weekly downloads
-
License
-
Repository
-
Last release
3 years ago

mrMenuGoodsList

引入

import Vue from 'vue';
import { mrMenuGoodsList } from 'mr-menu-sidebar';

Vue.component('mrMenuGoodsList', mrMenuGoodsList);

代码演示

<mr-menu-goods-list
  :goods-list="goodsList"
  currency-symbol="$"
  type="scroll"
  :stickyTop="30"
  @change-order-number="changeOrderNumber"
  @click-goods-item="clickGoodsItem"
  @click-goods-image="clickGoodsImage"
/>
let id = 0;
export default {
  name: 'App',
  data () {
    return {
      goodsList: [
        {
          id: ++id,
          categoryName: '热炒',
          orderTotalNum: 55,
          goodsList: [
            {
              goodsId: ++id,
              goodsName: '热炒-椒盐虾球',
              price: 167.89,
              orderNum: 0,
              goodsImg: 'https://t7.baidu.com/it/u=1956604245,3662848045&fm=193&f=GIF',
              goodsRemark: '就是河虾而已,没有特殊的东'
            }
          ],
          children: [
            {
              id: ++id,
              categoryName: '肉类',
              show: true,
              goodsList: [
                {
                  goodsId: ++id,
                  goodsName: '肉类-椒盐虾球',
                  price: 399,
                  goodsImg: 'https://t7.baidu.com/it/u=1956604245,3662848045&fm=193&f=GIF',
                  orderNum: 2
                }
              ]
            }
          ]
        },
        {
          id: ++id,
          categoryName: '家常菜',
          goodsList: [
            {
              goodsId: ++id,
              goodsName: '热炒-椒盐虾球',
              price: 399,
              orderNum: 0,
              goodsImg: 'https://t7.baidu.com/it/u=1956604245,3662848045&fm=193&f=GIF',
            }
          ],
          children: [
            {
              id: ++id,
              categoryName: '肉类',
              show: true,
              goodsList: [
                {
                  goodsId: ++id,
                  goodsName: '肉类-椒盐虾球',
                  price: 399,
                  orderNum: 0,
                  goodsImg: 'https://t7.baidu.com/it/u=1956604245,3662848045&fm=193&f=GIF',
                }
              ]
            }
          ]
        },
      ]
    }
  },
  methods: {
    changeOrderNumber (itemData, changeOrderNumValue, isSubtract) {
      // console.log(itemData, changeOrderNumValue, isSubtract);
      itemData.orderNum = changeOrderNumValue;
    },
    clickGoodsItem (itemData) {
      console.log(itemData);
    },
    clickGoodsImage (itemData) {
      console.log(itemData, 'clickImage');
    }
  }
}

API

Props

参数说明类型默认值
goodsList菜品结构列表array[]
currencySymbol货币符号string¥
type切换类型tab列表tab切换, scroll列表滚动切换stringtab
stickyTop吸顶距离number0

Events

事件名描述参数
change-order-number菜品数量更新itemData: 当前点击菜品数据value: 菜品数量更新后的值isSubtract: 是否是递减
click-goods-item点击菜品列表行itemData: 当前点击菜品数据
click-goods-image点击菜品列表图片itemData: 当前点击菜品数据

安装

# yarn安装 
yarn add mr-menu-sidebar

# npm安装
npm install mr-menu-sidebar --save

mr-menu-sidebar

快速上手

import Vue from 'vue';
import mrMenuSidebar from 'mr-menu-sidebar';

Vue.use(mrMenuSidebar);

按需加载

import Vue from 'vue';
import {
  mrMenuGoodsList,
  mrMenucollapseTransition,
  mrMenusticky,
  mrMenucounter
} from 'mr-menu-sidebar';

Vue.component('mrMenuGoodsList', mrMenuGoodsList);
Vue.component('mrMenucollapseTransition', mrMenucollapseTransition);
Vue.component('mrMenusticky', mrMenusticky);
Vue.component('mrMenucounter', mrMenucounter);
0.2.5

3 years ago

0.2.4

3 years ago

0.2.3

3 years ago

0.2.2

3 years ago

0.2.1

3 years ago

0.2.0

3 years ago

0.1.5

3 years ago

0.1.4

3 years ago

0.1.3

3 years ago

0.1.2

3 years ago

0.1.1

3 years ago

0.1.0

3 years ago