簡體   English   中英

我可以在JS文件中使用液體嗎?

[英]Can I use liquid inside JS file?

我正在使用Shopify,並且如果存在特定的產品標簽,則需要顯示一些消息。 我需要從JS文件中檢查產品標簽,並且需要知道該怎么做。

我嘗試在js文件中使用{{product.tags}},但出現錯誤,我也在.js.liquid文件中嘗試了此操作,但仍然拋出錯誤。

{% assign clearance = false %}
    {% for tag in product.tags %}
            {% if tag contains 'Clearance' %}
                 {% assign clearance = true %}
            {% endif %}
   {% endfor %}

有一種方法可以在js中使用嗎? 如果沒有,我如何以js方式獲取所有產品標簽? 我知道我可以從臨時文件中執行此操作,但是我只需要在js文件中執行此操作。

您可能正在尋找名為jsx Java擴展。

除此之外,本來就具有template literals ,但是您只能在其中使用表達式,而不能使用循環或其他邏輯(除了三元表達式 )。

如果您要查找的內容與創建HTML無關,而僅與修改變量(或對數據執行其他代碼)有關,則可以使用標准Javascript:

let clearance = false;
for (const tag in product.tags) { // this assumes product.tags is an object
for (const tag of product.tags) { // this assumes product.tags is an array
    if (tag.includes('Clearance') {
        clearance = true;
    }
}

.js.liquid文件將只接受轉換字符串作為Liquid中的var(例如:{{“ my_text” | t}}。

如果您想在Javascript代碼中使用其他類型的Liquid字符串,則可以使用一節,並將JavaScript包含在{%javascript%}標簽內。

這也可以在代碼段或模板中使用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM