Доступ к состоянию усилителя в шаблонах amp-mustache или AMP.navigateTo

Я пытаюсь создать автозаполнение ввода, которое срабатывает при нажатии на товар. Входные данные позволяют пользователю выбрать город, чтобы он мог попасть на страницу сведений о продукте с контекстом города.

Чтобы добиться этого, я сохраняю URL продукта в ампер-состоянии, нажимая на продукт из списка продуктов, затем, когда пользователь выбирает город, с которым я хочу перейти, чтобы перейти к URL продукта с помощью cityId в качестве параметра запроса. я использую amp-list с amp-mustache для автозаполнения.

Код:

    <form action="//localhost/search/" id="citysuggest-form" on="submit:autosuggest-list.hide" target="_top" novalidate=""  hidden>
        <input autocomplete="off" i name="bysearch" on="input-debounced:AMP.setState({city_autosuggest: {autosuggest: event.value}}),autosuggest-list.show" placeholder="Search city..." required="" value="" type="text" [value]="autosuggest|| ''" class="search__form" autofocus>
        <span class="close" on="tap:autosuggest-list.hide,city__search.hide" role="button" tabindex="0">×</span>

    </form>
    <amp-selector layout="container" on="select:AMP.navigateTo(url='//localhost'+(selectProductUrl || '')+'?cityId='+event.targetOption)">
        <amp-list [src]="'//localhost/api/v2/autocomplete-amp/city/?record=5&term=' + (city_autosuggest.autosuggest || '')" height="110" hidden="" id="autosuggest-list" layout="responsive" src="//localhost/api/v2/autocomplete-amp/city/?record=5&term=" width="200" class="search__result-list">
            <template type="amp-mustache">
                <div class="search__result" option='{{payload.cityId}}' role="option" tabindex="0">{{result}}</div>
            </template>
        </amp-list>
    </amp-selector>

Но вышесказанное выдает ошибку как url= не оценивается. Есть ли способ сделать это?

0 ответов

Другие вопросы по тегам