Я создал пользовательский модуль Magento 2.3.0, который взаимодействует с другим модулем следующим образом:
- из области администратора, используя поле Extra JS, я отправляю объект в скрытый ввод, который является частью шаблона .p html.
- внутри этого шаблона .p html, я анализирую объект, l oop it и добавляю переменные в div.
<input type="hidden" id="input_b2b_variables" value="" />
<script type="text/javascript">
require(['jquery'], function ($) {
setTimeout(function () {
var b2b_variables_val = document.getElementById('input_b2b_variables').value;
var b2b_variables = {};
if (b2b_variables_val != undefined && b2b_variables_val != null && b2b_variables_val != "") {
var b2b_variables = JSON.parse(b2b_variables_val);
}
if (Object.keys(b2b_variables).length > 0) {
$.each(b2b_variables, function (key, data) {
if('label' in data && 'type' in data && 'value' in data) {
if(data.type == 'price') {
var dataValue = '<span class="price">' + data.value + '</span>';
} else {
var dataValue = data.value;
}
$('.table-prices > tbody').append('<tr><th class="col label" scope="row">'+data.label+'</th><td class="col data" data-th="'+data.label+'">'+dataValue+'</td></tr>');
}
});
} else {
$('.table-prices > tbody').html('No data available.');
}
}, 2500);
});
</script>
Я хочу перевести эти JS переменные, такие как data.label, используя функцию i18n. Например, в одном случае data.label = 'Price', и я хочу перевести его, в зависимости от каждого вида магазина, во что-то вроде 'Precio'.
Я знаю, что файлы .p html допускают только такой перевод, но мне интересно, возможно ли как-то выполнить мою просьбу.
Возможно ли это? Как я могу это сделать?