2017-03-02 2 views
0

공식 Ember Guide about actions은 조치 도우미로 전달 된 객체의 구조화가 액션 헬퍼 내에서 value 매개 변수를 사용하여 가능하다는 점을 강조합니다. 내 문제는이 시나리오가 첫 번째 인수에 대해서만 작동하지만 나머지 인수에 대해서는 실패한다는 것입니다.Ember 액션 인수로 전달 된 객체 분리하기

twiddle 사례를 설명하기 위해 준비했습니다. 이 간단한 회전에서 my-component은 버튼 클릭 후 동작을 트리거하고 application 컨트롤러가 동작을 처리합니다. application.hbs에서 볼 수 있듯이 나는 행동을 (action 'actionHandler' value='name')으로 선언했다. 즉, 조치 인수의 이름 필드를 조치 핸들러에 application.js 내로 보내야합니다. 그러나 표시되는 경고에서 볼 수 있듯이; value 매개 변수가 작업의 첫 번째 인수에 대해 작동합니다 (john이 예상대로 표시됨). 하지만 두 번째 인수 (jack은 작업 처리기의 두 번째 인수로 검색되지 않지만 전체 개체가 검색 됨)에는 실패합니다.

내 질문은; 첫 번째 인수 후에 인수를 파기하는 방법이 있습니까? 가능한 경우 인수 중 추출 할 속성 (예 : name 첫 번째 인수, id 번째 인수 등)을 변경할 수 있습니까?

답변

1

대답은 없습니다. 당신이 트위들 (twiddle)에 표시 한 것처럼, 첫 번째 인수 후에 인수를 분해 할 수 없습니다. 이 기능은 대부분 의 첫 번째 인수 인 eventvalue=target.value이라고 말하면서 사용했습니다. 이 경우, destructure는 첫 번째 인수만으로 적용될 것입니다. 그리고 우리는 파괴되지 않는 인수를 많이 보낼 수 있습니다.

+0

나는 왜 누군가가 우리가 할 수없는 이유에 대해 정확한 소스 코드를 제안 할 것이라고 생각합니까? – kumkanillam

+1

[소스 코드] (https://github.com/emberjs/ember.js/blob/516e93c7745c59748fc237b791b18c908c4b14f7/packages/ember-glimmer/lib/helpers/action.js#L329)에서 알 수 있습니다. 첫 번째 것만 처리하고 있습니다. – ykaragol

관련 문제