что означает ":" в Dart? - PullRequest
       59

что означает ":" в Dart?

0 голосов
/ 04 августа 2020

Я пытался получить четкое объяснение того, что: означает в дротике.

Насколько я могу судить, это похоже на какой-то оператор, но я не могу получить четкого объяснения о том, что именно он делает.

Я понимаю, что он привык так назначать вещи другим вещам, но я не уверен в деталях.

Я пробовал погуглить, не повезло.

Я пробовал искать в документации по дротику.

https://dart.dev/guides/language/language-tour#operators

Я знаю, что он используется как часть условных выражений, как здесь:

https://dart.dev/guides/language/language-tour#conditional -выражения

Вот примеры его использования:

Пример 1:

class someBloc extends Bloc<someEvent, someState> {
    someBloc() : super(someState.initial());
}

Пример 2:

class someClass {
  final String requestType;
  final String name; 
   
  factory someClass.fromJson(Map<String, dynamic> json) {
        return SomeClass(
            requestType: json['Type'],
            name: json['Name']);
      }
}

Ответы [ 2 ]

0 голосов
/ 04 августа 2020

Это просто оператор присваивания. Вы присваиваете значение свойству виджета. Например, виджет «Контейнер» имеет множество свойств, таких как цвет или высота:

  Container(
    margin: const EdgeInsets.all(10.0),
    color: Colors.amber[600],
    width: 48.0,
    height: 48.0,
  ),
0 голосов
/ 04 августа 2020

В примерах 1 и 2:

: используется для установки именованного параметра. Например, допустим, я хочу создать виджет Card. Виджет card опционально принимает параметр с именем с именем elevation. Поэтому я могу сделать так:

Card(
  elevation: 4.0,
)

Другой способ использования : - это быстрые условные выражения.

final String isMyListEmpty = myList.isEmpty ?? 'Yes, the list is empty' : 'No, the list is not empty';

В этом примере наше условие - myList.isEmpty. Если это условие истинно, возвращается первое выражение после ??. В противном случае, если условие ложно, возвращается выражение после :.

...