2015-01-23 3 views
2

이것은 매우 단순한 것처럼 보이지만 어떻게 든 그것을 수행하는 방법을 모릅니다. 나는 "핵심 붕괴 오픈"이벤트와 고분자 구성 요소에 데이터를 보내려고하지만이 작동하지 않습니다 : 매개 변수가있는 폴리머 함수 호출

<core-collapse on-core-collapse-open="{{loadDetails(data)}}"> 
{{data.Title}} 
... 

나는 위의 코드를 사용

, 폴리머의 loadDetails 기능이 타격되지 않습니다.

Polymer('custom-item', { 
     data: {}, 
     ready: function() { 
     }, 
     loadDetails: function (e, details, sender) { 
      debugger; 
     } 
    }); 

내가 선언적 구문 (아래)에서 함수 구문을 사용하고 있지 않다 경우, loadDetails 기능은 안타.

<core-collapse on-core-collapse-open="{{loadDetails}}"> 
{{data.Title}} 
... 

어떻게 이벤트에서 매개 변수를 보낼 수 있습니까?

+0

이것은 Dart와 관련이없는 것 같습니다. 'dart-polymer' 태그를 추가 한 이유가 있습니까? –

+0

이것이 Dart와 관련이 있는지 확실하지 않았습니다. 나는 그것을 지금 제거 할 것이다. – sam113

+0

폴리머 1.x의 방법은 그것을 할 수 있습니다 : http://stackoverflow.com/questions/28210278/polymer-event-parameters-on-repeat/31749033#31749033 – adam

답변

0

나는 다른 게시물에서 대답을 얻었다. 다른 컨텍스트로 게시 했더라도 같은 것을 사용할 수 있음을 이해합니다. 그 스레드에 대한 답장을 Gunter에게 보내 주셔서 감사합니다.

Polymer event parameters on repeat

0
on-core-collapse-open="{{loadDetails(data)}}" 

이 의미 loadDetails(data)을 실행하고 어떤이의 반환 값이 이벤트 핸들러로 바인딩 될 것입니다. 네가 원하는게 아니야.

또한 이벤트 처리기 함수는 이미 이벤트 개체 인 매개 변수를받습니다. 추가 매개 변수를 전달할 수 없습니다. data을 전달하려는 경우 this.data 속성을 참조하는 경우 : loadDetails 함수는 이미 this.data 형태로 액세스 할 수 있으므로 전달할 필요가 없습니다.

두 개의 서로 다른 이벤트에 대해 동일한 핸들러 함수를 사용하고 각 이벤트마다 추가 매개 변수를 전달하려는 경우 익명의 함수 래퍼를 사용하여이를 수행 할 수 있습니다. 선언적 구문을 사용하는 것은 불가능합니다.

+0

데이터가 this.data 없습니다. 그래서 나는 추가 매개 변수가 정말로 필요했습니다. 해결 방법이 있으면 생각해 봅시다. – sam113

0

당신은 core-collapse의 속성에 data를 결합하고 (이벤트 핸들러의 target 인수 또는 event 인수의 target 속성 또는 data이 요소의 모델 인 경우 양자 택일 어쨌든 그냥 TemplateInstance 액세스를 사용하여 데이터를 액세스 할 수 있습니다 https://stackoverflow.com/a/24530099/217408에서 전체 예제보기)

관련 문제