我们正在开发一个应用程序,它将在产品详细信息页面上显示一个按钮来执行一些操作。我们使用 product.metaifields 根据条件显示相同的内容。所以基本上按钮显示会根据元字段值进行切换。
我们面临的问题是,从管理部分激活该功能,然后该按钮将不会显示在用户端,除非我们在浏览器上进行硬刷新。这里发生的是 Shopify 缓存元字段值,因此条件检查将不起作用。当我们对应用程序执行某些操作时,有什么方法可以删除页面缓存?
我们正在开发一个应用程序,它将在产品详细信息页面上显示一个按钮来执行一些操作。我们使用 product.metaifields 根据条件显示相同的内容。所以基本上按钮显示会根据元字段值进行切换。
我们面临的问题是,从管理部分激活该功能,然后该按钮将不会显示在用户端,除非我们在浏览器上进行硬刷新。这里发生的是 Shopify 缓存元字段值,因此条件检查将不起作用。当我们对应用程序执行某些操作时,有什么方法可以删除页面缓存?
当您在 Shopify 中呈现页面时,它会呈现所有内容,包括您在呈现时可能访问的元字段资源值。元字段值没有特殊的缓存。如果您在面向客户端的页面上呈现元字段“AAA”,请使用应用程序或管理员将元字段更改为“BBB”,则不会向已呈现的页面发出重绘任何内容的信号。
如果您想要动态行为,例如基于元字段资源呈现具有值的按钮,则必须对 App 进行回调,获取新内容并更新 DOM,或者使用 WSS 之类的推送策略:/ / 保持通道对监控这些事情的后端开放。
总而言之,您的问题不是缓存数据之一,而是您正在呈现非动态值并期望您的 UX 是动态的这一事实。