Доступ к переменным Shopify Liquid в Javascript - PullRequest
0 голосов
/ 04 мая 2020

Мой вопрос: возможно ли получить доступ к переменным в Shopify Liquid с помощью Javascript?

{% assign my_array= "apples, oranges, peaches, tomatoes" | split: ", " %}


function my_function(number){
    return "{{my_array[number]}}";
  }

  $('#click_me').click(function(){
    alert(my_function(0));
  });

Я знаю, что это возможно с AJAX и PHP, но есть ли Аналогичным образом я могу реализовать использование Shopify Liquid и JQuery в одиночку?

1 Ответ

1 голос
/ 04 мая 2020

Liquid - это внутренний заманчивый язык, это означает, что он рендерится до Javascript. Это означает, что после завершения визуализации жидкости у вас не будет доступа к логу жидкости c, а поскольку JS отображается после жидкости, это означает, что вы вообще не можете получить к нему доступ.

Таким образом, вы не можете передавать JS переменные жидкости в режиме реального времени.

Но вы можете создать JS объект с жидкостью:

{% assign my_array= "apples, oranges, peaches, tomatoes" | split: ", " %}

var my_array = {{ my_array | json }};
function my_function(number){
  return "my_array[number]";
}

$('#click_me').click(function(){
  alert(my_function(0));
});

Вы можете использовать AJAX чтобы получить указанную c страницу, но из вашего примера это не принесет вам пользы, так как вы пытаетесь получить доступ к жидкой переменной в событии Javascript, что невозможно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...