All Projects → TimvdLippe → Iron Lazy Pages

TimvdLippe / Iron Lazy Pages

Licence: bsd-3-clause
Lazy-load content and lazy-register pages to reduce the first load time

Projects that are alternatives of or similar to Iron Lazy Pages

skeleton-carousel
Carousel component. Horizontal and vertical swipe navigation
Stars: ✭ 31 (-67.37%)
Mutual labels:  polymer, lazy-loading
Hugo Swift Theme
A simple open source theme for publishing with hugo
Stars: ✭ 85 (-10.53%)
Mutual labels:  lazy-loading
L2t Paper Slider
Polymer element for displaying slides in a carousel
Stars: ✭ 53 (-44.21%)
Mutual labels:  polymer
Polymer Bundler
Moved to Polymer/tools monorepo
Stars: ✭ 1,206 (+1169.47%)
Mutual labels:  polymer
Login Fire
An element that allows simple configuration of multiple provider login for firebase
Stars: ✭ 58 (-38.95%)
Mutual labels:  polymer
Abmediaview
Media view which subclasses UIImageView, and can display & load images, videos, GIFs, and audio and from the web, and has functionality to minimize from fullscreen, as well as show GIF previews for videos.
Stars: ✭ 79 (-16.84%)
Mutual labels:  lazy-loading
Gwt Api Generator
Generator for creating GWT JSInterop clients from Polymer Web Components
Stars: ✭ 49 (-48.42%)
Mutual labels:  polymer
Dominant Colors Lazy Loading Wordpress Plugin
This plugin allows you to lazy load your images while showing the dominant color of each image as a placeholder – like Pinterest or Google Images.
Stars: ✭ 93 (-2.11%)
Mutual labels:  lazy-loading
Geo Location
Web component element for the Geolocation API
Stars: ✭ 86 (-9.47%)
Mutual labels:  polymer
Yall.js
A fast, flexible, and small SEO-friendly lazy loader.
Stars: ✭ 1,163 (+1124.21%)
Mutual labels:  lazy-loading
Flip Clock
A flip clock, timer and countdown made with Polymer
Stars: ✭ 69 (-27.37%)
Mutual labels:  polymer
Gamecomposer
GameComposer is a game authoring tool and also a game runtime environment targeting at desktop and mobile devices.
Stars: ✭ 59 (-37.89%)
Mutual labels:  polymer
Redux Store Element
A custom element allowing a more declarative use of Redux.
Stars: ✭ 83 (-12.63%)
Mutual labels:  polymer
Responsively Lazy
Lazy load responsive images
Stars: ✭ 1,080 (+1036.84%)
Mutual labels:  lazy-loading
Vaadin Upload
The Web Component for uploading multiple files with progress indication. Part of the Vaadin components.
Stars: ✭ 87 (-8.42%)
Mutual labels:  polymer
Home Assistant Js
🐝 JavaScript implementation of the Home Assistant API using NuclearJS
Stars: ✭ 50 (-47.37%)
Mutual labels:  polymer
Chartjs Plugin Deferred
Chart.js plugin to defer initial chart updates
Stars: ✭ 65 (-31.58%)
Mutual labels:  lazy-loading
Ngx Lazy Load Images
Image lazy load library for Angular 2+
Stars: ✭ 77 (-18.95%)
Mutual labels:  lazy-loading
Webpack Core Usage
webpack2完整系列课程,欢迎阅读。同时欢迎移步我的react全家桶文章全集: https://github.com/liangklfangl/react-article-bucket
Stars: ✭ 94 (-1.05%)
Mutual labels:  lazy-loading
Jplusone
Tool for automatic detection and asserting "N+1 SELECT problem" occurences in JPA based Spring Boot Java applications and finding origin of JPA issued SQL statements in general
Stars: ✭ 91 (-4.21%)
Mutual labels:  lazy-loading

iron-lazy-pages

Published on webcomponents.org Build Status

<iron-pages> with lazy-loading functionality.

⚠️ This element is no longer maintained. ⚠️

Lazy-loading pages

Big applications have a lot of pages. On first load, loading all page elements is undesirable. Most of the pages are unused for the current user. To solve these performance issues, lazy-loading provides an easy-to-use solution.

Lazy-loading means that all elements of your page are loaded when the user opens the respective page. E.g. when your user visits domain.com/about, all elements on the about page are fetched and loaded.

Example:

<iron-lazy-pages attr-for-selected="data-route" selected="{{route}}">
  <x-foo data-route="foo" data-path="demo/x-foo.html"></x-foo>
  <x-bar data-route="bar" data-path="demo/x-bar.html"></x-bar>
  <section data-route="baz">
    Inline element baz.
  </section>
</iron-lazy-pages>

In the above example, whenever the user routes to domain.com/foo, the elements defined in foo/foo.html are fetched from the server and loaded by Polymer.

Consequently whenever the selected value changes from foo to bar, the page foo will be hidden.

Fetching is only performed once, e.g. switching from foo to bar to foo will fetch foo once and show foo twice.

<dom-if> support

You can also add <dom-if> as a route to enable restamping:

<iron-lazy-pages
    attr-for-selected="data-route"
    selected="{{route}}"
    loading="{{loading}}"
    hide-immediately>
  <template is="dom-if" data-route="foo" restamp>
    Leaving this tab and coming back will loose input value due to restamp<br/>
    <input type="text"/>
  </template>
  <template is="dom-if" data-route="bar">
    Leaving this tab and coming back will keep input value<br/>
    <input type="text"/>
  </template>
</iron-lazy-pages>
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].