我在Liquid环境中还很陌生,想知道您是否可以在Liquid文件中像JS一样初始化对象变量?
let person = [{
'name' : 'John Doe',
'age' : '20'
}];
我知道液体正在使用{%Assign%},所以它是任何可行的工作方式
{% assign person = [{
'name' : 'John Doe',
'age' : '20'
}]; %}
这是直接对其进行初始化,而无需从元字段中提取任何数据。
谢谢!
答案 0 :(得分:0)
除非已在元字段中保存任何自定义对象,否则您无法在Shopify中创建任何自定义对象。以下是将对象分配为字符串,然后在javascript中使用它的一种方法。
{% assign person = "[{'name' : 'John Doe','age' : '20'}]" %}
<script>
var person = {{person}};
//typeof(person) is object
</script>
答案 1 :(得分:0)
您可能会使用这样的修饰:
{%- capture person -%}
name : John Doe , age : 20
{%- endcapture -%}
{% assign person = person | split:',' %}
人员现在是一个数组。
{{ person.first }}
或
{{ person[0] }}
将输出名称:John Doe。
然后,走得更远:
{% assign person_name = person.first | split:':' %}
所以
{{ person_name.last }}
或
{{ person_name[1] }}
将输出:John Doe。
等