Flutter를 사용해서 개발을 하다보면 Iterable 클래스의 .map() 메서드를 리스트의 항목을 매핑하는데 유용하게 사용한다.
그런데 .map() 메서드는 대상 리스트의 항목만 파라미터로 받아오는데, 가끔 파라미터에 index도 있으면 편할 것 같은 상황이 있다. 예를 들면 특정 인덱스에 해당하는 항목에만 속성을 부여하고 싶을 때이다.
그럴 땐 collection.dart 파일을 import 하면 .mapIndexed() 메서드를 사용할 수 있다.
import 'package:collection/collection.dart';
images.mapIndexed((index, element) => Padding(
padding: EdgeInsets.only(
right: index == images.length - 1 ? 0 : 8.0
),
...
예를 들면 마지막 항목에는 패딩을 주기 싫을 때
https://api.flutter.dev/flutter/package-collection_collection/IterableExtension/mapIndexed.html
'Flutter' 카테고리의 다른 글
뒤늦게 정리하는 Flutter riverpod 개념 (0) | 2023.04.06 |
---|---|
Debounce와 Throttle (0) | 2023.04.06 |
Flutter GoRouter로 페이지 관리하기 (0) | 2023.03.27 |
Flutter Naver Login Android 이슈 (0) | 2023.03.14 |
SingleChildScrollView keyboardDismissBehavior (0) | 2023.02.23 |