파파비의 블로그
플러터, flutter) 인수가 필요한 콜백메서드를 전달하는 방법 본문
반응형
보통은 메서드를 인수로 전달할때는 레퍼런스만 전달하기 때문에 메소드의 이름만을 전달하게 된다.
그런데 이런 경우에는 메서드가 실행할 때 인수를 필요로 하더라도 우리는 전달할 수가 없다.
(사실은 있다. 메소드 자체가 해당 콜백메서드랑 똑같은 인수를 전달받는 형태라면, 그냥 레퍼런스를 전달해도 된다)
이를 해결하기 위한 한가지 방법은 위 코드대로
콜백메소드에 익명함수를 전달하고 익명함수의 바디에 우리가 원하는 함수를 넣는 것이다.
익명함수 자체가 메모리에 올라가게 되어 나중에 필요할 때 그대로 실행된다.
그래서 바디에 우리가 인수까지 넣어서 실행되도록 해두면 해결된다.
그리고 만약 콜백메서드에서 무조건인수를 받아야하는데, 사용을하지 않는다면
컨벤션으로 인수의 이름을 _로 지정해둔다
텍스트필드가 제출될 때, 메소드를 실행하는데, 거기에서 전달받는 value 값이 사실은 필요가 없다. 그래서 _로 해두고
사용하지 않음을 표시한다
반응형
'개발 > flutter' 카테고리의 다른 글
플러터, flutter) 위젯들 레이아웃에 관하여... (0) | 2020.05.26 |
---|---|
플러터, flutter) 디버그 방법 3가지 (0) | 2020.05.25 |
플러터, flutter) List와 Map을 활용하여 복잡한 자료구조 만들기 (0) | 2020.05.25 |
Dart의 public private (0) | 2020.05.24 |
플러터, flutter & Dart) iterable & .map function & spread operator(...) (6) | 2020.05.24 |
Comments