템플릿에서 위젯 액션으로 매개변수를 주입할 수 있나요?

실제로 제 문제는 위에서 제시된 방식으로 해킹될 수 없었습니다:

  • 네, 알림 수준은 변경되었지만…
  • 저장되지는 않았습니다. 다른 행동을 통해 저장하려면 다른 곳을 클릭해야 합니다.

GitHub 코드 데이터베이스에서 무작위 키워드를 열심히 검색한 끝에 다음과 같은 구조를 찾을 수 있었습니다:
{{d-button action=(action "up" wc) ...}}.

몇 가지 테스트를 해본 결과, 다음과 같이 작동한다는 결론에 도달했습니다:

  • 템플릿:
    {{d-button action=(action "nameoftheaction" arg1 arg2) ...}}`.
    
  • JS:
    api.modifyClass("component:some-component", {
        actions: {
            nameoftheaction(arg1, arg2, argA, argB) {
                console.log(arg1);
                console.log(arg2);
                console.log(argA);
                console.log(argB);
            }
        }
    })
    

메서드의 첫 번째 인자 arg1, arg2는 템플릿에서 전달된 값입니다. 나머지 인자 argA, argB…는 컴포넌트의 특성상 전달될 수 있습니다(예를 들어, category-notifications-button은 사용자가 클릭한 설정에 따라 정수를 반환합니다).

제가 작성한 내용이 정확하다고 확신할 수는 없지만, 저와 같은 질문을 하는 누군가에게 도움이 될 수 있을 것입니다.