JSPM

  • Created
  • Published
  • Downloads 10031
  • Score
    100M100P100Q140930F
  • License BSD-3-Clause

Bidirectional data binding into the page's URL.

Package Exports

  • @polymer/iron-location/iron-location
  • @polymer/iron-location/iron-location.js
  • @polymer/iron-location/iron-query-params
  • @polymer/iron-location/iron-query-params.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@polymer/iron-location) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

Build status Published on webcomponents.org

Demo and API docs

Changes in 2.0

  • URL Polyfill no longer a dependency. Small workaround implemented.

<iron-location>

The iron-location element manages binding to and from the current URL.

iron-location is the first, and lowest level element in the Polymer team's routing system. This is a beta release of iron-location as we continue work on higher level elements, and as such iron-location may undergo breaking changes.

Properties

When the URL is: /search?query=583#details iron-location's properties will be:

  • path: '/search'
  • query: 'query=583'
  • hash: 'details'

These bindings are bidirectional. Modifying them will in turn modify the URL.

iron-location is only active while it is attached to the document.

While iron-location is active in the document it will intercept clicks on links within your site, updating the URL pushing the updated URL out through the databinding system. iron-location only intercepts clicks with the intent to open in the same window, so middle mouse clicks and ctrl/cmd clicks work fine.

You can customize this behavior with the urlSpaceRegex.

Dwell Time

iron-location protects against accidental history spamming by only adding entries to the user's history if the URL stays unchanged for dwellTime milliseconds.