Flutter: รายการเลิกใช้แล้ว?
Dec 14 2020
หลังจากอัปเกรด Flutter เป็นเวอร์ชันล่าสุดฉันจะได้รับคำเตือนการเลิกใช้งานสำหรับรายการทั้งหมดของฉัน
List<MyClass> _files = List<MyClass>();
=>'List' is deprecated and shouldn't be used.
น่าเสียดายที่ไม่ได้ให้คำแนะนำว่าจะแทนที่ด้วยอะไร ตอนนี้เราควรจะใช้อะไรแทนดีล่ะ?
- Dart SDK เวอร์ชัน: 2.12.0-141.0.dev
- Flutter: Channel master, 1.25.0-9.0.pre.42
คำตอบ
38 Chris Dec 13 2020 at 23:34
ตกลงพบแล้วเป็นเพียงวิธีการสร้างอินสแตนซ์:
List<MyClass> _files = [];
แก้ไข : อาจเป็นสิ่งที่พบบ่อยที่สุดมีรายละเอียดเพิ่มเติมเล็กน้อยตามเอกสาร :
รายการขนาดความยาวคงที่ 0
List<MyClass> _list = List<MyClass>.empty();
รายการที่เติบโตได้
List<MyClass> _list = [];
//or
List<MyClass> _list = List<MyClass>.empty(growable: true);
ความยาวคงที่ด้วยการเติมที่กำหนดไว้ล่วงหน้า
int length = 3;
String fill = "test";
List<String> _list = List<String>.filled(length ,fill , growable: true);
// => ["test", "test", "test"]
แสดงรายการด้วยฟังก์ชันสร้าง
int length = 3;
MyClass myFun(int idx) => MyClass(id: idx);
List<MyClass> _list = List.generate(length, myFun, growable: true);
// => [Instance of 'MyClass', Instance of 'MyClass', Instance of 'MyClass']
SerdarPolat Feb 09 2021 at 01:25
List<MyClass> myList = <MyClass>[];
Cybergigz Feb 13 2021 at 15:09
จาก:
_todoList = new List();
เปลี่ยนไป:
_todoList = [];