![](/img/trans.png)
[英]I need a workaround for assigning Liquid variables with dashes to javascript variable names
[英]assigning liquid to javascript variable
var first = 'one',
second = 'two.png';
image = first + second;
console.log('js image: ' + image);
image = '{{ image | asset_url }}';
console.log('liquid image: ' + image);
在控制台中產生:
js image: onetwo.png
liquid image:
我無法獲得從液體過濾器輸出代碼的代碼。 我嘗試使用{% raw %}
並查看了幾個SO問題( Shopify:使用Javascript中{%schema%}中的 變量,Shopifyliquid中使用javascript變量, .js.liquid文件中使用asset_url )均無濟於事。
我在這里做錯了什么? 我期望得到:
liquid image: onetwo.png?123456789
甚至刪除asset_url
:
image = '{{ image }}';
仍產生:
liquid image:
通過以下方式檢索變量:
image = {{ 'image' | asset_url }};
//console log
js image: image.png
liquid image: image.png
與@Subhrajyoti Das聊天后,有一種很簡單的方法。
用偽文本創建完整的字符串,其中實際文件名是:
assetString = '{{ 'filename' | asset_url }}'
這將產生:
cdn.shopify.com/s/files/0/0000/0000/0000/t/00/assets/filename?0000000000
然后使用字符串替換用資產變量替換“文件名”:
image = assetString.replace("filename", image);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.