shopify中.js和.js.liquid之间的区别是什么?

时间:2014-09-22 21:38:33

标签: shopify

在资源部分,有一些名称为.js.js.liquid的文件。

如果我想将js文件包含到主题中,那么我应该使用哪一个?

这是在.js.liquid文件中。我想构造一个由液体变量组成的字符串。当我将这个字符串附加到DOM元素中时,它似乎没有显示出来。

var someString = '';
  {%for line in order.line_items%}
  someString += 'q='+{{line.quantity}}+'&p='+{{line.product.id}}+'&pp='+{{line.price}}+'&w='+{{line.grams}}+'&i='+{{line.product.featured_image|product_img_url|url_param_escape}}+'&n='+{{line.product.title|url_param_escape}}+'&';
  {%endfor%}

$('body').append(someString);

1 个答案:

答案 0 :(得分:4)

您可以在.js.liquid个文件中使用液体,但.js个文件只能使用javascript。

如果您要包含常规js文件,请使用.js扩展名。如果您在文件中也有流动性,则需要使用.js.liquid

编辑:

我认为order文件中无法访问.js.liquidSee here

  

订单对象可以通过订单电子邮件模板,结帐的感谢页面以及订单打印机等应用程序进行访问。

另见this discussion on the Shopify forums

  

您只能在清算资产中使用Liquid过滤器和全局设置对象。

     

它的工作方式如下:每当您编辑.js.liquid文件的.css.liquid时,或者编辑主题设置时,都会创建一个新的.css或.js文件,然后将其存储在我们的资源服务器上。以任何其他方式更新您的商店将不会更新这些文件......

     

鉴于上述情况,Shopify无法在这些文件中公开商店信息(可能会发生变化)。