This repository has been archived by the owner on Mar 13, 2018. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 42
/
Copy pathextending-a-polymer-element.html
74 lines (59 loc) · 2.05 KB
/
extending-a-polymer-element.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
<!--
Copyright (c) 2014 The Polymer Project Authors. All rights reserved.
This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
Code distributed by Google as part of the polymer project is also
subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
-->
<!--
# Extending a Polymer element
Shows how to extend an existing Polymer element's Shadow DOM.
Use the `extends` attribute when defining the extender element, giving it the
name of the element you are extending. This lets your extender element
inherit from and data bind to the extendee element's properties and methods:
<polymer-element name="extendee-element">
...
</polymer-element>
<polymer-element name="extender-element" extends="extendee-element">
...
</polymer-element>
Include a `<shadow></shadow>` element in your extender element `<template>`
where you want the Shadow DOM from the extendee to appear:
<polymer-element name="extender-element" extends="extendee-element">
<template>
<div>Hi, I'm {{name}}.</div>
<shadow></shadow>
</template>
...
</polymer-element>
Using `<extendee-element>` renders:
<div>My favorite color is red.</div>
Using `<extender-element>` renders:
<div>Hi, I'm Rob.</div>
<div>My favorite color is green.</div>
[jsbin](http://jsbin.com/punam/edit)
-->
<link rel="import" href="../../components/polymer/polymer.html">
<polymer-element name="extendee-element">
<template>
<div>My favorite color is {{color}}.</div>
</template>
<script>
Polymer({
color: "red"
});
</script>
</polymer-element>
<polymer-element name="extender-element" extends="extendee-element">
<template>
<div>Hi, I'm {{name}}.</div>
<shadow></shadow>
</template>
<script>
Polymer({
name: "Rob",
color: "green"
});
</script>
</polymer-element>