在.js.liquid文件中使用asset_url

Using asset_url within a .js.liquid file

本文关键字:asset url js liquid 文件      更新时间:2023-09-26

我正在编写一个Shopify主题,我需要在我的一个模板中使用带有自定义指针的谷歌地图。

asset_url在Javascript文件中工作时遇到问题,因此我可以正确链接到我的新指针/标记图形。我做错了什么?

我尝试了以下两种方法,但都不起作用:

var image = {
  url: "url({{ 'gr_gm-pointer.png' | asset_url }})"
  ...etc
};

var image = {
  url: url({{ 'gr_gm-pointer.png' | asset_url }})
  ...etc
};

我是javascript和liquid的新手,所以任何帮助都将不胜感激。提前感谢您的帮助。

您确定主题中存在资产吗?当引用这样的资产时,我所有使用js.liquid文件的测试都能正常工作。

只有当您在.lique文件中编写脚本时,它才能工作;

<script>
....
....append('<img src='"{{ 'ajax-loader.gif' | asset_url }}" />');
....
</script>

或者这里还有另一种解决方案;

https://ecommerce.shopify.com/c/ecommerce-design/t/hardcoding-asset-url-s-is-it-safe-31768

这是旧的,但我一直在努力解决这个问题,并找到了解决方案,所以我想我会发布一个答案。谷歌地图标记对象有一个图标属性,你可以在液体中这样称呼它:

var marker = new google.maps.Marker({
      position: latLng,
      map: map,
      icon: '{{ 'your-icon.png' | asset_img_url: '60x' }}'