Libraries and visibility
Usage
import 'dart:html'; // dart: β ΠΠΌΠΏΠΎΡΡ built-in Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ
import 'package:test/test.dart'; // package: β ΠΈΠΌΠΏΠΎΡΡ Π²ΡΠ΅Ρ
ΠΎΡΡΠ°Π»ΡΠ½ΡΡ
Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ
// ΠΈΠ»ΠΈ ΠΏΠΎ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΌΡ ΠΏΡΡΠΈ
import 'dart:html' as myname;
// Import only foo.
import 'package:lib1/lib1.dart' show foo;
// Import all names EXCEPT foo.
import 'package:lib2/lib2.dart' hide foo;
ΠΡΠ»ΠΎΠΆΠ΅Π½Π½Π°Ρ ΠΏΠΎΠ΄Π³ΡΡΠ·ΠΊΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ (deferred loading or lazy loading). ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠΊΠΎΡΠ΅ΠΉΡΠ΅ΠΉ ΠΏΠΎΠ΄Π³ΡΡΠ·ΠΊΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡ Π΄Π»Ρ ΡΡΠ°ΡΡΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΡΡΠΎΠ±Ρ Π½Π΅ Π³ΡΡΠ·ΠΈΡΡ ΡΠ΅Π΄ΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ.
import 'package:greetings/hello.dart' deferred as hello;
Future<void> greet() async {
// load library when you need via .loadLibrary()
await hello.loadLibrary();
hello.printGreeting();
}
Implementing libraries
See Create Library Packages for advice on how to implement a library package, including:
How to organize library source code.
How to use the
export
directive.When to use the
part
directive.When to use the
library
directive.How to use conditional imports and exports to implement a library that supports multiple platforms.
Last updated