Префикс as у импорта
Префикс as используется в директиве import для того,
чтобы задать библиотеке короткое имя (префикс). После этого все
классы, функции и переменные из импортированной библиотеки
доступны только через этот префикс. Это особенно удобно, когда
две библиотеки содержат сущности с одинаковыми именами, а также
когда нужно явно показать, из какой библиотеки взят тот или
иной элемент. В первом параметре указывается путь к библиотеке,
во втором, после ключевого слова as, - имя префикса.
Синтаксис
import 'path/to/library.dart' as prefix;
Пример
Давайте импортируем стандартную библиотеку dart:math
с префиксом math и вызовем функцию max через
этот префикс:
import 'dart:math' as math;
void main()
{
int res = math.max(3, 5);
print(res);
}
Результат выполнения кода:
5
Пример
Префикс помогает избежать конфликта, когда две библиотеки
содержат сущности с одинаковыми именами. Давайте импортируем
dart:math и dart:core и обратимся к функции
max через префикс:
import 'dart:math' as math;
import 'dart:core' as core;
void main()
{
int res = math.max(1, 4);
print(res);
print(core.int.parse('12345'));
}
Результат выполнения кода:
4
12345
Пример
Если префикс указан, обратиться к элементу библиотеки
без него нельзя. Давайте попробуем вызвать функцию
max без префикса - это приведёт к ошибке:
import 'dart:math' as math;
void main()
{
int res = max(3, 5);
print(res);
}
Результат выполнения кода:
Error: Undefined name 'max'.