In this question , Glenn Vandeuren publishes the following:
Element
<link rel="import" href="../polymer/polymer.html"> <link rel="import" href="../paper-button/paper-button.html"> <dom-module id="login-button"> <style> :host { display: block; box-sizing: border-box; } </style> <template> <paper-button raised>Login using <span>[[service]]</span></paper-button> </template> </dom-module> <script> Polymer({ is: 'login-button', properties: { service: String }, listeners: { 'tap': '_handleTap' }, _handleTap: function () { this.fire('login', this.service); } }); </script>
Index
<html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, minimum-scale=1.0, initial-scale=1.0, user-scalable=yes"> <title>login-button Demo</title> <script src="../../webcomponentsjs/webcomponents-lite.js"></script> <link rel="import" href="../login-button.html"> </head> <body> <login-button service="google"></login-button> <login-button service="twitter"></login-button> <script> document.addEventListener('login', function(service) { </script> </body> </html>
source share