The lack of possibility of usage Dart on Android / iOS / Desktop is current main disadvantage. Dart is similar to NodeJS. But to be usable on Android / iOS, you need real Android / Java interoperability. Like Objective-C vs Swift in iOS word.
Flutter is currently joke — “Flutter uses its own high-performance rendering engine to draw widgets.” Too bad. No native UI widgets, instead of own drawing framework above Android written in NDK. Maybe usable for writing multi platform games. But there are better tools (Unity 3d) in the market for this purpose.