首页 > 解决方案 > 如何更改 Snipcart 的默认 $localize("actions.continue_shopping") 标签文本?

问题描述

Snipcart 的 v3 文档提供的以下代码片段似乎没有覆盖其默认文本标签:继续购物

document.addEventListener('snipcart.ready', () => {
    Snipcart.api.session.setLanguage('en', {
        actions: {
            continue_shopping: "Go back to store"
        }
    });
});

我已将上面的代码段直接放在以下...

<div hidden id="snipcart" data-api-key="[Testing API Key]"></div>
<script src="https://cdn.snipcart.com/themes/v3.0.6/default/snipcart.js"></script>

当我单击激活 Snipcart 的结帐模式时,默认标签Continue shopping仍然存在(而不是Go back to store)。

标签: javascriptlocalizationsnipcart

解决方案


提到的问题已在V3.0.10中修复。问题中的示例代码将按原样工作。


旧版本的 Snipcart 存在一个问题:如果过早地使用 JS API 应用本地化,则在加载本地化文件时它们将被覆盖。

为确保按顺序加载所有内容,您可以更新代码以使用Snipcart.ready承诺:

document.addEventListener('snipcart.ready', () => {
    Snipcart.ready.then(function() {
      Snipcart.api.session.setLanguage('en', {
        actions: {
            continue_shopping: "Go back to store"
        }
      });
    });
});

推荐阅读