назначение жидкости переменной javascript - PullRequest
0 голосов
/ 01 февраля 2019
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: использование переменных из {% schema%} в Javascript , Использование переменных JavaScript в Shopify liquid , Использование asset_url в файле .js.liquid ) безрезультатно.

Что я здесь не так делаю?Я ожидаю получить:

liquid image: onetwo.png?123456789

Даже удаление asset_url:

image = '{{ image }}';

Все еще производит:

liquid image:

Ответы [ 2 ]

0 голосов
/ 01 февраля 2019

После общения с @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);
0 голосов
/ 01 февраля 2019

Получить переменную следующим образом:

image = {{ 'image' | asset_url }};

//console log
js image: image.png
liquid image: image.png
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...