使用 Timber 和 Shopify,如何更新购物车预览?

Using Timber and Shopify, how can I update the cart preview?

我在 Shopify 主题中使用 Timber

我有一个 POST 请求到自定义页面上的 /cart/add。该项目已正确添加到购物车,但在我的回调中,我需要更新购物车预览 (ajax-cart-template.liquid)。

我看到 ajax-cart.js 中已经存在一个函数来执行此操作,其中 Handlebars 模板在私有函数中呈现,buildCart()

我可以复制 buildCart() 函数中的代码并将其放入我的回调中,但这显然是多余的。我能以某种方式在该范围之外调用 buildCart() 吗?

通过一点点定制,这应该是可行的。

首先,通过将 build: buildCart 添加到

使 buildCart 成为 public 方法
module = {
  init: init,
  load: loadCart,
  build: buildCart
};

当我写这篇文章时,我意识到 loadCart 从未被使用过 publically。哎呀。我想我的想法是,如果有人想重建购物车,他们会调用它 ajaxCart.loadCart(),它会获取数据并构建它。

因为您已经有了购物车,您可以改为 ajaxCart.build(cart_object) 就可以了。