Редактировать данные из списка усилителей - PullRequest
1 голос
/ 29 января 2020

Я делаю бесконечную прокрутку со списком усилителей и не могу узнать, как urlencode (изменить) полученные значения JSON -данных для каждой загруженной страницы. Я не хочу, чтобы сервер отправлял как обычную кодированную строку, так и urlencoded, потому что это приведет к получению данных двойного размера (200 строк станут 400 для каждой страницы). Это мой рабочий код для списка амплитуд бесконечной прокрутки:

        <amp-list height="500" width="440" 
        layout="responsive" load-more="auto"
        src="www.myPage.com/firstPageToLoad.json" binding="no">

           <template type="amp-mustache">

              <ul>
                {{#words}} 
                <li>
                    <a class="synWord" href="www.myPage.com/{{.}}">{{.}}</a>    
                </li>
                {{/words}}
              </ul> 

          </template>

        </amp-list> 

Так что мой вопрос: как я могу urlencode "{{.}}" Значения на стороне клиента? Я прочитал всю документацию и не могу найти решение. Я пытался сделать так:

<amp-state id="allData" src="www.myPage.com/firstPageToLoad.json"></amp-state> 

<amp-list [src]="allData.words.map(word => encodeURIComponent(word))"
src="www.myPage.com/firstPageToLoad.json" 
height="500" width="440" 
layout="responsive" load-more="auto" binding="no">

Это не работает. Я думаю, потому что данные автоматически загружаются при прокрутке, и мое состояние усилителя не привязано к этому событию.

1 Ответ

1 голос
/ 29 января 2020

Вот вам хакерское решение:

  1. Установить привязку = атрибут "Always" для списка усилителей.
  2. Затем в шаблоне сделать это:

    <a [href]="'http://www.mypage.com/'+encodeURIComponent('{{.}}')">{{.}}</a>

...