вывод значения формата amp-bind по событию - PullRequest
0 голосов
/ 25 января 2019

Я пытаюсь отформатировать вывод числового значения, чтобы сделать его более читабельным на amp-bind, однако я не вижу, как я могу реализовать регулярное выражение для значения event.output?

В настоящее время у меня есть следующее;

                <label class="form-title">
                    <span>How much do you need?</span>
                    <span [text]="[amount]">
                        £1500000
                    </span>
                </label>
                <input type="range"
                       name="amountSlider"
                       min="10000"
                       step="10000"
                       value="1500000"
                       max="3000000"
                       on="change: AMP.setState({ amount: '£' + event.value.replace('/\B(?=(\d{3})+(?!\d))/g', ',')})">

Однако это приводит к ошибке;

%s %s amp-bind: Expression eval failed. [object String].replace is not a supported function.​​​

1 Ответ

0 голосов
/ 25 января 2019

Функция «заменить» не является функцией из белого списка: https://www.ampproject.org/docs/reference/components/amp-bind#white-listed-functions

Для вашей цели может быть что-то вроде:

"12345678.1" .split (/\B(?=(?:\∈width3casts)+(?!\d))/).join(",")

"12 345 678,1"

поскольку «split» занесен в белый список.ВНИМАНИЕ: Я не проверял это на странице AMP!

...