更新记录
1.0.0(2025-05-23)
第一版,先支持iOS端
- 商品管理:商品列表、商品详情
- 购物车:创建购物车、添加商品、修改商品、删除商品
- 下单:提交订单,同步订单到Shopify的web端
- 支付:集成Shopify的checkout套件支付,同步支持web端的全部支付方式
平台兼容性
Vue2 | Vue3 |
---|---|
√ | √ |
App | 快应用 | 微信小程序 | 支付宝小程序 | 百度小程序 | 字节小程序 | QQ小程序 |
---|---|---|---|---|---|---|
HBuilderX 3.6.8,Android:支持,iOS:支持,HarmonyNext:不确定 | × | × | × | × | × | × |
钉钉小程序 | 快手小程序 | 飞书小程序 | 京东小程序 | 鸿蒙元服务 |
---|---|---|---|---|
× | × | × | × | × |
H5-Safari | Android Browser | 微信浏览器(Android) | QQ浏览器(Android) | Chrome | IE | Edge | Firefox | PC-Safari |
---|---|---|---|---|---|---|---|---|
× | × | × | × | × | × | × | × | × |
hy-shopify
功能简介
hy-shopify是一个基于UTS开发的Shopify电商平台集成模块,支持在App中使用StoreFront API,完成商品信息获取、购物车使用已经下单同步到web端等功能。 支持iOS、Android双端。
DONE:
- 商品管理:获取商品列表、商品详情
- 购物车功能:商品添加、删除、数量修改
- 订单管理:创建订单
- 支付集成:集成Shopify checkout套件,支持Shopify Payments等多种支付方式
TODO:
- 订单管理:获取订单列表、订单详情、取消订单
- 地址管理:获取地址列表、添加地址
快速开始
- 通过HBuilderX导入hy-shopify插件
- 打开uni_modules/hy-shopify目录,修改安卓和iOS文件夹里创建client时设置的shopDomain和apiKey
self.client = Graph.Client( shopDomain: "ororo-eason.myshopify.com", apiKey: "57d52bac001d07d3e8101ec49650565c" )
- 在需要使用的页面中引入hy-shopify
import * as hyShopify from '@/uni_modules/hy-shopify'
- 根据业务需求使用hyShopify中的方法,具体方法见下面的API介绍
API介绍
-
获取商品列表
hyShopify.getProductList(query : string, after : string, first : number, callback : (result : HYProductListInfo) => void) : void;
-
获取商品详情
hyShopify.getProductDetail(handle : string, callback : (result : UTSJSONObject) => void) : void;
-
创建购物车
hyShopify.createCart(callback : (result : UTSJSONObject) => void) : void;
-
添加商品到购物车
hyShopify.addToCart(cartId : string, variantId : string, quantity : number, callback : (result : UTSJSONObject) => void) : void;
-
更新购物车商品数量
hyShopify.updateCartLine(cartId : string, lineId : string, quantity : number, callback : (result : UTSJSONObject) => void) : void;
-
删除购物车商品
hyShopify.removeCartLine(cartId : string, lineId : string, callback : (result : UTSJSONObject) => void) : void;
-
获取购物车
hyShopify.getCartDetail(cartId : string, callback : (result : UTSJSONObject) => void) : void;
-
checkoutWithUrl
hyShopify.checkoutWithUrl(checkoutUrl : string, payCallBack : HYPayResultCallBack) : void;
-
checkoutWithCartId
hyShopify.checkoutWithCartId(cartId : string, payCallback : HYPayResultCallBack) : void;