shopping.js相关方法调用介绍(v5.0)
    2021-12-15
  
描述

  shopping.js是MLECMS的购物系统常用函数,用于对接系统购物流程。

前期工作

  引入shopping.js文件   
<script type="text/js" src="inc/script/shopping.js"></script>

1、将商品加入购物车

调用方法
  
mle.shopping.add_cart()
 
相关参数

  共有1个必填参数,4个可选参数:
   1、商品 id,必填
   2、显示购物车中物品数量的元素ID,省略时不显示
   3、商品颜色,省略时为空字符串
   4、商品规格,省略时为空字符串
   5、购买数量,省略时为1

调用实例

  1、加入10个id为1的单规格商品到购物车中:   
mle.shopping.add_cart(1,'','','',10)

  2、加入id为2的多规格商品到购物车中,并且改变购物车中的物品数量:   
<div>购物车(<span id="cart_number">0</span>)</div>
<script type="text/javascript">
mle.shopping.add_cart(2,'cart_number','白色','XXL')
</script>


2、快速创建规格选择器

调用实例
  
mle.shopping.create_sku()

相关参数

  该方法传递一个对象,对象结构如下:
   data:商品规格对象,该对象可以通过{:product::data():}返回的商品数据中获得,具体调用请参考下方调用实例
   sku:规定所有规格的元素类名
   selected:规定被选中规格的类名
   disabled:规定不可选规格的类名
   color:规定“商品颜色”的类名
   sku1:规定“商品规格”的类名
   sku_level1:指定一级规格是“商品颜色”还是“商品规格”
   sku_level2:指定二级规格是“商品颜色”还是“商品规格”
   show_sku:每个规格选择时触发的回调方法,可用变量有:price单价、inv库存、img图片
   no_sku:当没有选完规格时触发的回调方法
 
调用实例
 
<!-- 调用商品 -->
{:$p = product::data(0,1,0,0,0,1):}

<-- 商品颜色 -->
{:foreach $p['skus']['color'] as $k=>$color:}
    <div id="{:$color['id_color']:}" class="liclass choose_color sku" >{:$color['colorname']:}</div>
{:/foreach:}

<-- 商品规格 -->
{:foreach $p['skus']['size'] as $k=>$size:}
   <div id="{:$size['id_size']:}" class="liclass choose_size sku">{:$size['val']:}</div>
{:/foreach:}

<script type="text/javascript">
mle.shopping.create_sku({
    data: {:json_encode($p['skus']):},
    sku: 'sku',
    selected: 'selected',
    disabled: 'sku_disable',
    color: 'choose_color',
    sku1: 'choose_size',
    sku_level1: 'sku1',
    sku_level2: 'color',
    show_sku: function(price,inv,img){
        // 规格选择完之后可以显示选中规格的单价、库存、图片
    }, 
    no_sku: function(){
        // 规格没选完的时候可以显示默认的单价、库存、图片
    }
})
</script>

3、获取购物车中所有物品id

调用方法
  
mle.shopping.get_cart()
相关参数

  共有1个可选参数:
   1、是否转成数组,true转换数组,false以半角逗号分隔形式。缺省值为 false

4、获取购物车中的商品总数量

调用方法
  
mle.shopping.get_cart()