knockout.js - Magento2 缓存打洞定价

标签 knockout.js magento2 hole-punching

我有一个 Magento 2 网站,该网站已设置为允许客户有自己的定价。然而,作为一个结果,现在为每个用户生成唯一的 FPC(用于类别和产品页面)。

为了解决这个问题,我想通过 Knockout JS 加载价格,以便 FPC 可以在所有登录用户之间共享,但定价将根据为用户分配的定价系统动态加载。

我是从阅读这篇文章开始的:https://magently.com/blog/full-page-cache-hole-punching-in-magento-2/

我已经能够成功配置 Knockout JS 以在类别页面上呈现“时间戳”(来自上述教程),并且我已经测试过 FPC 正在所有登录用户之间共享。

但是,我现在遇到的问题是我需要将产品 ID 传递给 block ,以便我可以使用该类返回该产品的正确价格。我浏览了各种文章、此处的问题等,但似乎无法找到答案。

最佳答案

为了增强 Magento 2 中绕过整页缓存功能的动态功能,我编写了打洞功能,可以帮助您查看一个工作示例。 (有关详细信息,请参阅 https://bitbucket.org/magstaging/punchhole

第 1 步:创建一个模型来实现 第 2 步:在前端 di.xml 中为模型定义一个节节点 第 3 步:使节点能够通过操作激活(例如结帐/购物车/添加 第 4 步:创建一个将使用您的节点的 phtml 模板 第五步:在view/frontend/web/js/jspart.js中创建一个js文件

define( [ 'uiComponent', 'Magento_Customer/js/customer-data' ], function (Component, customerData) { 'use strict';

祝你好运

关于knockout.js - Magento2 缓存打洞定价,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64689081/

相关文章:

javascript - 每个都有 2 个可观察的集合

javascript - knockout 启用javascript

knockout.js - knockout : Why would comment tags not be working?

java - Java UDP打洞示例-通过防火墙连接

javascript - knockout 选择选项在渲染项目后绑定(bind)回调

magento2 - 设置Magento2后如何安装示例数据?

magento2 - Magento 2 : How to get multiple selection attibute as list on list. phtml

node.js - magento2 添加新的 grunt 任务

java - TCP 打洞 Java 示例

node.js - Node.js 中的 TCP 打洞