Skip to content

'package:flutter/src/material/dropdown.dart': Failed assertion: line 1252 pos 12: 'widget.items!.where((DropdownMenuItem<T> item) => item.value == widget.value).length == 1': is not true. #101192

@Vedsaga

Description

@Vedsaga

Steps to Reproduce

  1. Execute flutter run on the code sample
  2. ...
  3. ...

Expected results:
I wanted drop-down to work normally.

Actual results:
I got this error message, on the terminal.

════════ Exception caught by widgets library ═══════════════════════════════════
The following assertion was thrown building BlocListener<CreateOrderBloc, CreateOrderState>(state: _BlocListenerBaseState<CreateOrderBloc, CreateOrderState>#58192):
'package:flutter/src/material/dropdown.dart': Failed assertion: line 1252 pos 12: 'widget.items!.where((DropdownMenuItem<T> item) => item.value == widget.value).length == 1': is not true.
package:flutter/…/material/dropdown.dart:1252
2

Either the assertion indicates an error in the framework itself, or we should provide substantially more information in this error message to help you determine and fix the underlying cause.
In either case, please report this assertion by filing a bug on GitHub:
  [https://github.com/flutter/flutter/issues/new?template=2_bug.md]()

The relevant error-causing widget was
BlocBuilder<CreateOrderBloc, CreateOrderState>
lib\…\screens\create_order.dart:136

When the exception was thrown, this was the stack
#2      _DropdownButtonState._updateSelectedIndexpackage:
flutter/…/material/dropdown.dart:1252
#3      _DropdownButtonState.didUpdateWidgetpackage:
flutter/…/material/dropdown.dart:1238
#4      StatefulElement.updatepackage:
flutter/…/widgets/framework.dart:4974
#5      Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#6      RenderObjectElement.updateChildren
package:flutter/…/widgets/framework.dart:5807
#7      MultiChildRenderObjectElement.update
package:flutter/…/widgets/framework.dart:6357
#8      Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#9      ComponentElement.performRebuild
package:flutter/…/widgets/framework.dart:4814
#10     StatefulElement.performRebuild
package:flutter/…/widgets/framework.dart:4959
#11     Element.rebuild
package:flutter/…/widgets/framework.dart:4511
#12     StatefulElement.update
package:flutter/…/widgets/framework.dart:4991
#13     Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#14     ComponentElement.performRebuild
package:flutter/…/widgets/framework.dart:4814
#15     StatefulElement.performRebuild
package:flutter/…/widgets/framework.dart:4959
#16     Element.rebuild
package:flutter/…/widgets/framework.dart:4511
#17     StatefulElement.update
package:flutter/…/widgets/framework.dart:4991
#18     Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#19     SingleChildRenderObjectElement.update
package:flutter/…/widgets/framework.dart:6204
#20     Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#21     SingleChildRenderObjectElement.update
package:flutter/…/widgets/framework.dart:6204
#26     Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#27     SingleChildRenderObjectElement.update
package:flutter/…/widgets/framework.dart:6204
#28     Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#29     SingleChildRenderObjectElement.update
package:flutter/…/widgets/framework.dart:6204
#30     Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#31     SingleChildRenderObjectElement.update
package:flutter/…/widgets/framework.dart:6204
#32     Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#33     ComponentElement.performRebuild
package:flutter/…/widgets/framework.dart:4814
#34     StatefulElement.performRebuild
package:flutter/…/widgets/framework.dart:4959
#35     Element.rebuild
package:flutter/…/widgets/framework.dart:4511
#36     StatefulElement.update
package:flutter/…/widgets/framework.dart:4991
#37     Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#38     SingleChildRenderObjectElement.update
package:flutter/…/widgets/framework.dart:6204
#39     Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#40     ComponentElement.performRebuild
package:flutter/…/widgets/framework.dart:4814
#41     Element.rebuild
package:flutter/…/widgets/framework.dart:4511
#42     ProxyElement.update
package:flutter/…/widgets/framework.dart:5136
#43     Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#44     SingleChildRenderObjectElement.update
package:flutter/…/widgets/framework.dart:6204
#45     Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#46     ComponentElement.performRebuild
package:flutter/…/widgets/framework.dart:4814
#47     Element.rebuild
package:flutter/…/widgets/framework.dart:4511
#48     ProxyElement.update
package:flutter/…/widgets/framework.dart:5136
#49     Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#50     SingleChildRenderObjectElement.update
package:flutter/…/widgets/framework.dart:6204
#51     Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#52     SingleChildRenderObjectElement.update
package:flutter/…/widgets/framework.dart:6204
#53     Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#54     SingleChildRenderObjectElement.update
package:flutter/…/widgets/framework.dart:6204
#55     Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#56     ComponentElement.performRebuild
package:flutter/…/widgets/framework.dart:4814
#57     Element.rebuild
package:flutter/…/widgets/framework.dart:4511
#58     ProxyElement.update
package:flutter/…/widgets/framework.dart:5136
#59     Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#60     ComponentElement.performRebuild
package:flutter/…/widgets/framework.dart:4814
#61     StatefulElement.performRebuild
package:flutter/…/widgets/framework.dart:4959
#62     Element.rebuild
package:flutter/…/widgets/framework.dart:4511
#63     StatefulElement.update
package:flutter/…/widgets/framework.dart:4991
#64     Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#65     ComponentElement.performRebuild
package:flutter/…/widgets/framework.dart:4814
#66     StatefulElement.performRebuild
package:flutter/…/widgets/framework.dart:4959
#67     Element.rebuild
package:flutter/…/widgets/framework.dart:4511
#68     StatefulElement.update
package:flutter/…/widgets/framework.dart:4991
#69     Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#70     ComponentElement.performRebuild
package:flutter/…/widgets/framework.dart:4814
#71     Element.rebuild
package:flutter/…/widgets/framework.dart:4511
#72     ProxyElement.update
package:flutter/…/widgets/framework.dart:5136
#73     Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#74     ComponentElement.performRebuild
package:flutter/…/widgets/framework.dart:4814
#75     Element.rebuild
package:flutter/…/widgets/framework.dart:4511
#76     StatelessElement.update
package:flutter/…/widgets/framework.dart:4865
#77     Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#78     ComponentElement.performRebuild
package:flutter/…/widgets/framework.dart:4814
#79     Element.rebuild
package:flutter/…/widgets/framework.dart:4511
#80     ProxyElement.update
package:flutter/…/widgets/framework.dart:5136
#81     Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#82     RenderObjectElement.updateChildren
package:flutter/…/widgets/framework.dart:5807
#83     MultiChildRenderObjectElement.update
package:flutter/…/widgets/framework.dart:6357
#84     Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#85     SingleChildRenderObjectElement.update
package:flutter/…/widgets/framework.dart:6204
#86     Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#87     ComponentElement.performRebuild
package:flutter/…/widgets/framework.dart:4814
#88     Element.rebuild
package:flutter/…/widgets/framework.dart:4511
#89     StatelessElement.update
package:flutter/…/widgets/framework.dart:4865
#90     Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#91     ComponentElement.performRebuild
package:flutter/…/widgets/framework.dart:4814
#92     Element.rebuild
package:flutter/…/widgets/framework.dart:4511
#93     ProxyElement.update
package:flutter/…/widgets/framework.dart:5136
#94     Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#95     ComponentElement.performRebuild
package:flutter/…/widgets/framework.dart:4814
#96     Element.rebuild
package:flutter/…/widgets/framework.dart:4511
#97     ProxyElement.update
package:flutter/…/widgets/framework.dart:5136
#98     Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#99     RenderObjectElement.updateChildren
package:flutter/…/widgets/framework.dart:5807
#100    MultiChildRenderObjectElement.update
package:flutter/…/widgets/framework.dart:6357
#101    Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#102    ComponentElement.performRebuild
package:flutter/…/widgets/framework.dart:4814
#103    StatefulElement.performRebuild
package:flutter/…/widgets/framework.dart:4959
#104    Element.rebuild
package:flutter/…/widgets/framework.dart:4511
#105    StatefulElement.update
package:flutter/…/widgets/framework.dart:4991
#106    Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#107    ComponentElement.performRebuild
package:flutter/…/widgets/framework.dart:4814
#108    Element.rebuild
package:flutter/…/widgets/framework.dart:4511
#109    ProxyElement.update
package:flutter/…/widgets/framework.dart:5136
#110    Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#111    ComponentElement.performRebuild
package:flutter/…/widgets/framework.dart:4814
#112    StatefulElement.performRebuild
package:flutter/…/widgets/framework.dart:4959
#113    Element.rebuild
package:flutter/…/widgets/framework.dart:4511
#114    StatefulElement.update
package:flutter/…/widgets/framework.dart:4991
#115    Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#116    SingleChildRenderObjectElement.update
package:flutter/…/widgets/framework.dart:6204
#117    Element.updateChild
package:flutter/…/widgets/framework.dart:3517

package:flutter/…/widgets/framework.dart:3517
#118    ComponentElement.performRebuild
package:flutter/…/widgets/framework.dart:4814
#119    Element.rebuild
package:flutter/…/widgets/framework.dart:4511
#120    ProxyElement.update
package:flutter/…/widgets/framework.dart:5136
#121    Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#122    SingleChildRenderObjectElement.update
package:flutter/…/widgets/framework.dart:6204
#123    Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#124    ComponentElement.performRebuild
package:flutter/…/widgets/framework.dart:4814
#125    StatefulElement.performRebuild
package:flutter/…/widgets/framework.dart:4959
#126    Element.rebuild
package:flutter/…/widgets/framework.dart:4511
#127    StatefulElement.update
package:flutter/…/widgets/framework.dart:4991
#128    Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#129    ComponentElement.performRebuild
package:flutter/…/widgets/framework.dart:4814
#130    StatefulElement.performRebuild
package:flutter/…/widgets/framework.dart:4959
#131    Element.rebuild
package:flutter/…/widgets/framework.dart:4511
#132    StatefulElement.update
package:flutter/…/widgets/framework.dart:4991
#133    Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#134    ComponentElement.performRebuild
package:flutter/…/widgets/framework.dart:4814
#135    Element.rebuild
package:flutter/…/widgets/framework.dart:4511
#136    ProxyElement.update
package:flutter/…/widgets/framework.dart:5136
#137    Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#138    ComponentElement.performRebuild
package:flutter/…/widgets/framework.dart:4814
#139    Element.rebuild
package:flutter/…/widgets/framework.dart:4511
#140    ProxyElement.update
package:flutter/…/widgets/framework.dart:5136
#141    Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#142    ComponentElement.performRebuild
package:flutter/…/widgets/framework.dart:4814
#143    StatefulElement.performRebuild
package:flutter/…/widgets/framework.dart:4959
#144    Element.rebuild
package:flutter/…/widgets/framework.dart:4511
#145    StatefulElement.update
package:flutter/…/widgets/framework.dart:4991
#146    Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#147    ComponentElement.performRebuild
package:flutter/…/widgets/framework.dart:4814
#148    Element.rebuild
package:flutter/…/widgets/framework.dart:4511
#149    ProxyElement.update
package:flutter/…/widgets/framework.dart:5136
#150    Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#151    ComponentElement.performRebuild
package:flutter/…/widgets/framework.dart:4814
#152    StatefulElement.performRebuild
package:flutter/…/widgets/framework.dart:4959
#153    Element.rebuild
package:flutter/…/widgets/framework.dart:4511
#154    StatefulElement.update
package:flutter/…/widgets/framework.dart:4991
#155    Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#156    ComponentElement.performRebuild
package:flutter/…/widgets/framework.dart:4814
#157    Element.rebuild
package:flutter/…/widgets/framework.dart:4511
#158    StatelessElement.update
package:flutter/…/widgets/framework.dart:4865
#159    Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#160    ComponentElement.performRebuild
package:flutter/…/widgets/framework.dart:4814
#161    StatefulElement.performRebuild
package:flutter/…/widgets/framework.dart:4959
#162    Element.rebuild
package:flutter/…/widgets/framework.dart:4511
#163    StatefulElement.update
package:flutter/…/widgets/framework.dart:4991
#164    Element.updateChild
package:flutter/…/widgets/framework.dart:3517
#165    ComponentElement.performRebuild
package:flutter/…/widgets/framework.dart:4814
#166    StatefulElement.performRebuild
package:flutter/…/widgets/framework.dart:4959
#167    Element.rebuild
package:flutter/…/widgets/framework.dart:4511
#168    BuildOwner.buildScope
package:flutter/…/widgets/framework.dart:2655
#169    WidgetsBinding.drawFrame
package:flutter/…/widgets/binding.dart:882
#170    RendererBinding._handlePersistentFrameCallback
package:flutter/…/rendering/binding.dart:367
#171    SchedulerBinding._invokeFrameCallback
package:flutter/…/scheduler/binding.dart:1145
#172    SchedulerBinding.handleDrawFrame
package:flutter/…/scheduler/binding.dart:1082
#173    SchedulerBinding.scheduleWarmUpFrame.<anonymous closure>
package:flutter/…/scheduler/binding.dart:863
(elided 6 frames from class _AssertionError, class _RawReceivePortImpl, class _Timer, and dart:async-patch)
════════════════════════════════════════════════════════════════════════════════
Code Sample
// flutter import
 import 'package:flutter/material.dart';

void main() {
  runApp(const BugReportApp());
}

class BugReportApp extends StatefulWidget {
  const BugReportApp({Key? key}) : super(key: key);

  @override
  State<BugReportApp> createState() => _BugReportAppState();
}

class _BugReportAppState extends State<BugReportApp> {
  final TextEditingController _dropdownController = TextEditingController();
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Bug Report',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: Flex(direction: Axis.vertical, children:[
                        DropdownButton<String>(
            value: _dropdownController.text == ""
                ? null
                : _dropdownController.text,
            items: ["hello, world", "how are you", "goodbye"]
                .map((_value) => DropdownMenuItem<String>(
                        child: Text(
                      _value,
                    )))
                .toList(),
            onChanged: (_value) {
              setState(() {
                _dropdownController.text = _value ?? _dropdownController.text;
              });
            },
          ),
      ],),
    );
  }
}
Logs

Metadata

Metadata

Assignees

No one assigned

    Labels

    r: solvedIssue is closed as solved

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions