File tree Expand file tree Collapse file tree 5 files changed +59
-0
lines changed
web/events/using_custom_events Expand file tree Collapse file tree 5 files changed +59
-0
lines changed Original file line number Diff line number Diff line change 1+ # Using custom events
2+
3+ Ports https://github.com/PolymerLabs/polymer-patterns/blob/e43f8b037203f5ea0d848ad64ee2f25d422e0093/snippets/events/using-custom-events.html
Original file line number Diff line number Diff line change 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 >
Original file line number Diff line number Diff line change 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+ }
Original file line number Diff line number Diff line change 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 >
Original file line number Diff line number Diff line change 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 >
You can’t perform that action at this time.
0 commit comments