2013-09-26 5 views

답변

14

당신은이 같은 폴리머 요소에서 사용자 정의 이벤트를 전달할 수 있습니다

dispatchEvent(new CustomEvent('nameOfEvent')); 

그런 다음, 부모 요소는이 같은 사용자 정의 이벤트를 수신 할 수 있습니다 여기에

<child-element on-childspeaks="fireAway"></child-element> 

하는 것은 더 완료 어떻게 작동하는지 보여주는 예. 첫째, 여기에 자식 요소에 대한 코드입니다

<!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> 

는 그리고 여기에 부모 요소에 대한 코드입니다

<!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

'ObservableMixin'을 가진 부분이 필요합니까? –