Chcę, aby element potomny wysłał niestandardowe zdarzenie i element nadrzędny, aby go wysłuchać i podjąć pewne działanie. Jak mam to zrobić podczas pracy z polimerem?W jaki sposób wysyłasz i słuchasz niestandardowych wydarzeń w Polymer?
11
A
Odpowiedz
14
Można wysyłką niestandardowe zdarzenie z polimeru-elementu tak:
dispatchEvent(new CustomEvent('nameOfEvent'));
Następnie, element nadrzędny może nasłuchiwać niestandardowej imprezy jak ta:
<child-element on-childspeaks="fireAway"></child-element>
Oto bardziej kompletny przykład pokazujący, jak to działa. Po pierwsze, tutaj jest kod dla elementu podrzędnego:
<!DOCTYPE html>
<polymer-element name="child-element">
<template>
<div on-click="dispatch">I am a child</div>
</template>
<script type="application/dart">
import 'dart:html';
import 'package:polymer/polymer.dart';
@CustomTag('child-element')
class ChildElement extends PolymerElement with ObservableMixin {
dispatch(Event e, var detail, Node sender) {
print('dispatching from child');
dispatchEvent(new CustomEvent('childspeaks'));
}
}
</script>
</polymer-element>
A oto kod dla elementu nadrzędnego:
<!DOCTYPE html>
<link rel="import" href="child_element.html">
<polymer-element name="parent-element">
<template>
<div>I am the parent</div>
<child-element on-childspeaks="fireAway"></child-element>
</template>
<script type="application/dart">
import 'dart:html';
import 'package:polymer/polymer.dart';
@CustomTag('parent-element')
class ParentElement extends PolymerElement with ObservableMixin {
void fireAway() {
window.alert('The child spoke, I hear');
}
}
</script>
</polymer-element>
+0
Czy wymagana jest część 'with ObservableMixin'? –
Powiązane problemy
- 1. Słuchaj niestandardowych wydarzeń w Vue.js
- 2. Kodowanie transferowe HTTP Chunked: w jaki sposób wysyłasz "\ r \ n"?
- 3. W jaki sposób mogę obsłużyć sposób Polymer bez zewnętrznych bibliotek?
- 4. W jaki sposób słuchasz kliknięć POI za pomocą Google Maps API?
- 5. W jaki sposób wysyłasz dane JSON do wywołania POST Rails.ajax Rails-ujs (nie używając jQuery)?
- 6. Wyrejestrowanie z wydarzeń w ObservableCollection
- 7. atrybut ukryty w Polymer 1,0
- 8. Słuchaj wydarzeń historycznych w FireFox?
- 9. Sposób na słuchanie wszystkich wydarzeń Apple?
- 10. Czy istnieje sposób ręcznego uruchamiania wydarzeń w serwisie Mapy Google?
- 11. W jaki sposób przetwarzane są `: ~ @` i `:! @`?
- 12. Wyjąć i aktualizacji istniejących Kalendarz wydarzeń
- 13. Pre-Build wydarzeń w Eclipse
- 14. Posłuchaj wszystkich wydarzeń w JavaScript
- 15. Powiększenie wydarzeń, które działają w Android Mapview
- 16. Znajdowanie luk w wielkich strumieniach wydarzeń?
- 17. Kiedy używać kliknięcia lub stuknięcia w/Polymer?
- 18. W jaki sposób OS X ładuje aplikację opartą na scenorysach i w jaki sposób zarządza oknami?
- 19. obserwować zmiany dla obiektu w Polymer JS
- 20. W jaki sposób są analizowane szablony Django?
- 21. Pętla przez NSMutableArray obiektów niestandardowych w najbardziej efektywny sposób pamięci
- 22. Google Plan: Polymer & Angular
- 23. Nie można wywołaćSelektora w moim komponencie Polymer
- 24. W jaki sposób przekształcić struktury Go za pomocą buforów protokołu i użyć ich w Dart over Ajax
- 25. Czy istnieje delegacja wydarzeń w dart SDK?
- 26. Ionic z emulatorem Androida: automatycznie wysyłasz lokalizację?
- 27. W jaki sposób zaimplementujesz podstawową pętlę zdarzeń?
- 28. Knockout.js - w jaki sposób przepustnicy niestandardowe wiązania
- 29. W jaki sposób realizowane są generatory i coroutines w CPython?
- 30. W jaki sposób CSS i DOM są zaimplementowane w przeglądarce?
możliwe duplikat [Jak mogę odpalić niestandardowe zdarzenie z Polymer Dart ?] (http://stackoverflow.com/questions/18971511/how-do-do-fire-a-custom-event-od-polymer-dart) –