iron-meta
is a generic element you can use for sharing information across the
DOM tree.
See: Documentation, Demo.
npm install --save @polymer/iron-meta
<html>
<head>
<script type="module">
import '@polymer/iron-meta/iron-meta.js';
</script>
</head>
<body>
<iron-meta key="info" value="foo"></iron-meta>
<!-- Other elements reading from the key 'info' see the value 'foo'. -->
</body>
</html>
import {PolymerElement} from '@polymer/polymer/polymer-element.js';
import {html} from '@polymer/polymer/lib/utils/html-tag.js';
import '@polymer/iron-meta/iron-meta.js';
class ExampleElement extends PolymerElement {
static get properties() {
return {
prop: String,
};
}
static get template() {
return html`
<iron-meta key="info" value="{{prop}}"></iron-meta>
info: [[prop]]
`;
}
}
customElements.define('example-element', ExampleElement);
If you want to send a PR to this element, here are the instructions for running the tests and demo locally:
git clone https://github.com/PolymerElements/iron-meta
cd iron-meta
npm install
npm install -g polymer-cli
polymer serve --npm
open http://127.0.0.1:<port>/demo/
polymer test --npm