Nano Hash - криптовалюты, майнинг, программирование

лист железа внутри нестандартного элемента с полимерным стартовым комплектом

Я использую Polymer Starter Kit в качестве основы для приложения. Итак, это одностраничное приложение с маршрутизацией в определенный раздел. Мой индекс практически не изменился, вы можете увидеть его здесь https://github.com/PolymerElements/polymer-starter-kit/blob/master/app/index.html.

Теперь у меня есть свой пользовательский элемент здесь

<dom-module id="lista-contatti">    
<template>

    <iron-ajax url="../../api/get_contacts.php" last-response="{{data}}" auto></iron-ajax>
    <iron-list items="{{data}}" as="item" id="list">
        <template>
            <paper-icon-item>
              <avatar class$="[[item.classe]]" item-icon></avatar>
              <paper-item-body two-line>
                <div><a href="{{computeLink(item.nome)}}"><span>[[item.nome]]</span> <span>[[item.cognome]]</span></a></div>
                <div secondary><span>[[item.tipo]]</span></div>
              </paper-item-body>
            </paper-icon-item>
        </template>

    </iron-list>

</template>

</dom-module>

Это работает, потому что, если я даю соответствующий класс моему железному списку, я вижу, как мой список заполняется. Единственная проблема заключается в том, что мой список будет отображаться под заголовком моего основного приложения (и это имеет смысл из-за подходящего макета, данного моему списку).

Кроме того, список отлично работает с заголовком, если я поместил его в один html-файл, как вы можете видеть на официальных демо-страницах Iron-List.

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

РЕДАКТИРОВАТЬ: это мой макет приложения index.html с одной страницей.

<body>
  <template is="dom-bind" id="app">
    <paper-drawer-panel>
      <paper-scroll-header-panel drawer fixed>
        <paper-toolbar> ... </paper-toolbar>
        <paper-menu> ... </paper-menu>
      </paper-scroll-header-panel>
      <paper-scroll-header-panel main condenses keep-condensed-header>
        <paper-toolbar> ... </paper-toolbar>
        <iron-pages attr-for-selected="data-route" selected="{{route}}">
          <section data-route="foo"> ... </section>
          <section data-route="contact">
            <!-- HERE IS MY DOM-MODULE -->
            <lista-contatti></lista-contatti>
          </section>
        </iron-pages>
      </paper-scroll-header-panel>
    </paper-drawer-panel>
  </template>
</body>

Мой iron-list не работает должным образом с paper-scroll-header-panel, потому что он вложен во многие элементы, такие как iron-pages, section и мой пользовательский dom-module. Список не может взаимодействовать с высотой заголовка и не может плавно прокручиваться вместе с ним.


  • Используете ли вы class="fit" в своем железном списке? 18.08.2015
  • Также можете уточнить, в чем вопрос или проблема - это чисто вопрос макета, или что-то не работает со скриптом, когда вы делаете его отдельным dom-модулем? 18.08.2015
  • Привет, спасибо за ваш интерес, я отредактировал свой вопрос, указав макет индекса и дополнительные пояснения. Надеюсь, теперь стало понятнее. 20.08.2015
  • Вы когда-нибудь догадывались об этом? думаю у меня такая же проблема 19.11.2016

Ответы:


1

В более ранних версиях полимера вам приходилось привязывать scrollTarget вашего списка к скроллеру панели заголовка. Об этом есть слайд в видео Polymer 0.5 @ 11:58. В этом случае обновленный код в Polymer 1.0 может выглядеть примерно так:

<paper-scroll-header-panel id="hPanel" main condenses keep-condensed-header>
    <iron-list id="list" items="{{data}}" as="item" >
    ...
    </iron-list>
</paper-scroll-header-panel>

сценарий:

document.querySelector("#list").scrollTarget = document.querySelector("#hPanel").scroller;

Примечание: я еще не проверял это, но решил, что сейчас это поможет указать вам правильное направление.

20.08.2015
  • К сожалению, это не работает, по крайней мере, в моем макете. Я уже много раз пытался назначить правильный scrollTarget моему списку, все безрезультатно. 21.08.2015
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

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

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..