簡體   English   中英

Shopify 價格問題

[英]Shopify Price Issue

我在這里掙扎。 當我注釋掉 var priceRounded = {{ product.price | money_without_trailing_zeros }}; 行計算工作。 當我不評論它時,什么也不會發生。 我試圖在沒有零的情況下呈現價格。 因此,如果產品價格為 20.00 英鎊,則 Shopify 出於某種原因認為它是 2000 英鎊。 因此,我需要按照Shopify 文檔中的描述刪除尾隨零。

Price {{ product.price | money_without_trailing_zeros }}<br />
<label for="meters-required">Number of M2</label><br />
<input type="number" id="meters-required" name="properties[meters required]" required minlength="1" maxlength="8" size="10"><br />    

Total Packs: <span id="output_totalPacks"></span><br />
Total Price: <span id="output_totalPrice"></span><br />
Price per Pack: <span id="output_pricePerPack"></span><br />
Price per Meter: <span id="output_pricePerMeter"></span><br />
Pack Size: <span id="output_PackSize"></span><br />


<script>

 var meters_req = document.querySelector("#meters-required"); var output_totalPacks = document.querySelector("#output_totalPacks"); var output_totalPrice = document.querySelector("#output_totalPrice"); var output_pricePerPack = document.querySelector("#output_pricePerPack"); const packSize = {{ packSize }}; const price = {{ product.price }}; //var priceRounded = {{ product.price | money_without_trailing_zeros }}; function woolCalc(){ var meters_required = document.getElementById("meters-required").value; var calc_TotalPrice = price * meters_required; var calc_TotalPacks = meters_required / packSize; var calc_PackPrice = price * packSize; output_totalPacks.innerHTML = calc_TotalPacks; document.getElementById("output_PackSize").innerHTML = packSize; document.getElementById("output_pricePerPack").innerHTML = calc_PackPrice; document.getElementById("output_totalPrice").innerHTML = calc_TotalPrice; } meters_req.addEventListener("input", woolCalc);
 Price {{ product.price | money_without_trailing_zeros }}<br /> Pack Size: {{ packSize }}<br /> Title: {{ priceRounded }};<br /> <label for="meters-required">Number of M2</label><br /> <input type="number" id="meters-required" name="properties[meters required]" required minlength="1" maxlength="8" size="10"><br /> Total Packs: <span id="output_totalPacks"></span><br /> Total Price: <span id="output_totalPrice"></span><br /> Price per Pack: <span id="output_pricePerPack"></span><br /> Price per Meter: <span id="output_pricePerMeter"></span><br /> Pack Size: <span id="output_PackSize"></span><br />

關於可能導致它的任何想法? 或者如何讓 function 在不認為它是實際價格的 100 x 的情況下計算價格?

Shopify 將貨幣作為 Integer 的一種進行處理。定價為 9.99 的產品在 Shopify 中處理為 999。這樣,在進行數學運算時,不會丟失“精度”。 您有義務使用過濾器將 integer 轉換為小數。

因此,如果您看到的是 2000 而不是您預期的 20.00,那是因為您沒有使用過濾器轉換貨幣。 為此,有 Liquid 和 JS 過濾器。 所以“沒有”是造成它的原因,這是 Shopify 中的自然現象。

暫無
暫無

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

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