Parameter Bernama dan Wajib
Termasuk bagian List dan Layar dalam perjalanan Flutter di Coddy. Pelajaran 13 dari 33.
Dengan tiga atau empat field, Book('Dune', 'Frank Herbert', 412) sulit dibaca, dan mudah saja tanpa sengaja menukar dua string. Parameter bernama mencantumkan nama field pada setiap pemanggilan:
class Book {
final String title;
final int pages;
Book({required this.title, required this.pages});
}
Book(title: 'Dune', pages: 412)Kurung kurawal pada konstruktor membuat parameternya menjadi parameter bernama. Kamu menulis setiap parameter dengan format name: value, dalam urutan apa pun.
Widget yang sudah kamu gunakan juga memakai parameter bernama, seperti Text(style: ...) atau ListTile(title: ...).
required berarti parameter tersebut wajib diberikan: jika kamu tidak menyertakan pages:, editor akan menampilkan error sebelum aplikasi dijalankan.
Tantangan
SedangTampilkan jumlah halaman setiap buku:
- tambahkan field
final int pages;keBook - ubah konstruktor agar menggunakan parameter bernama dan wajib, lalu tulis buku-bukunya seperti
Book(title: 'Dune', author: 'Frank Herbert', pages: 412). Emma memiliki474halaman dan Ulysses730 - tampilkan
412 pagesdi akhir setiap baris, sebagaitrailing:pada tile
Coba sendiri
import 'package:flutter/material.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
final List<Book> books = [
Book('Dune', 'Frank Herbert'),
Book('Emma', 'Jane Austen'),
Book('Ulysses', 'James Joyce'),
];
return MaterialApp(
debugShowCheckedModeBanner: false,
home: Scaffold(
appBar: AppBar(title: const Text('Books')),
body: ListView(
children: [
for (Book book in books)
ListTile(
title: Text(book.title),
subtitle: Text(book.author),
),
],
),
),
);
}
}
class Book {
final String title;
final String author;
Book(this.title, this.author);
}
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di List dan Layar
1Daftar yang Dapat Digulir
Daftar yang Bisa DigulirItem DaftarBagian Awal dan AkhirKetuk Item DaftarPemisah Antarbaris4Class Milikmu Sendiri
Class untuk DatamuParameter Bernama dan WajibField yang Bisa KosongWidget dari Data dengan mapFilter List dengan whereCari di MapLatihan sendiri: Compiler Flutter online