Я застрял с пожарным магазином - PullRequest
1 голос
/ 07 февраля 2020

Я недавно узнал о разработке приложений, и мне трудно добавить учетные записи пользователей Firestore в приложение задачи, я использую флаттер и плагины https://pub.dev/packages/flutter_chips_input.

  1. Пользователь не отображается в приложении, как я добавляю пользователя в свою задачу?
  2. Как назначить задачу своему пользователю и могу прочитать созданную задачу?
static const userResults = <User>[];
ChipsInput(
  decoration: InputDecoration(
    labelText: "Select Team",
  ),
  maxChips: 3,
  findSuggestions: (String query) {
    if (query.length != 0) {
      var lowercaseQuery = query.toLowerCase();
      return userResults.where((user) {
        return 
          user.displayName
            .toLowerCase()
            .contains(query.toLowerCase()) 
          || user.email
            .toLowerCase()
            .contains(query.toLowerCase());
      }).toList(growable: false)
        ..sort((a, b) => a.displayName
            .toLowerCase()
            .indexOf(lowercaseQuery)
            .compareTo(b.displayName
                .toLowerCase()
                .indexOf(lowercaseQuery)
            )
        );
    } else {
      return userResults;
    }
  },
  onChanged: (data) {
    print(data);
  },
  chipBuilder: (context, state, _) {
    return InputChip(
      key: ObjectKey(widget.user),
      label: Text(widget.user.fullName),
      avatar: CircleAvatar(
        backgroundImage: NetworkImage(widget.user.photoUrl),
      ),
      onDeleted: () => state.deleteChip(widget.user),
      materialTapTargetSize: MaterialTapTargetSize.shrinkWrap,
    );
  },
  suggestionBuilder: (context, state, _) {
    return ListTile(
      key: ObjectKey(widget.user),
      leading: CircleAvatar(
        backgroundImage: NetworkImage(widget.user.photoUrl),
      ),
      title: Text(widget.user.fullName),
      subtitle: Text(widget.user.email),
      onTap: () => state.selectSuggestion(widget.user),
    );
  },
),
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...