Skip to content

Commit 228fbab

Browse files
committed
Added custom events sample
1 parent 08bd0b8 commit 228fbab

File tree

5 files changed

+59
-0
lines changed

5 files changed

+59
-0
lines changed
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# Using custom events
2+
3+
Ports https://github.com/PolymerLabs/polymer-patterns/blob/e43f8b037203f5ea0d848ad64ee2f25d422e0093/snippets/events/using-custom-events.html
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
<link rel="import" href="packages/polymer/polymer.html">
2+
3+
<polymer-element name="child-element">
4+
<template>
5+
<input id="myInput" type="text" placeholder="Write something">
6+
<button on-tap="{{fireEvent}}">Fire custom event</button>
7+
</template>
8+
<script type="application/dart" src="elements.dart"></script>
9+
</polymer-element>
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
library web.events.using_custom_events.elements;
2+
3+
import 'dart:html' show Event, Node;
4+
5+
import 'package:polymer/polymer.dart';
6+
7+
@CustomTag('parent-element')
8+
class ParentElement extends PolymerElement {
9+
@observable String message = '';
10+
ParentElement.created() : super.created();
11+
void heard(Event e, var detail, Node sender) {
12+
message = 'heard: ' + detail['message'];
13+
}
14+
}
15+
16+
@CustomTag('child-element')
17+
class ChildElement extends PolymerElement {
18+
ChildElement.created() : super.created();
19+
void fireEvent(Event e, var detail, Node sender) {
20+
fire('spoken', detail: {'message': this.$['myInput'].value});
21+
}
22+
}
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<!DOCTYPE html>
2+
<html lang="en">
3+
<head>
4+
<meta charset="utf-8">
5+
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
6+
<script src="packages/web_components/dart_support.js"></script>
7+
<link rel="import" href="parent_element.html">
8+
</head>
9+
<body unresolved>
10+
<parent-element></parent-element>
11+
<script type="application/dart">export 'package:polymer/init.dart';</script>
12+
</body>
13+
</html>
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
<link rel="import" href="packages/polymer/polymer.html">
2+
<link rel="import" href="child_element.html">
3+
4+
<polymer-element name="parent-element">
5+
<template>
6+
<div on-spoken="{{heard}}">
7+
<child-element></child-element>
8+
<div>{{message}}</div>
9+
</div>
10+
</template>
11+
<script type="application/dart" src="elements.dart"></script>
12+
</polymer-element>

0 commit comments

Comments
 (0)