Flutter Dart如何删除断点或调试器

Flutter Dart如何删除断点或调试器,flutter,dart,visual-studio-code,vscode-debugger,Flutter,Dart,Visual Studio Code,Vscode Debugger,在Python中,我可以在任何一行代码上插入breakpoint()关键字,当我从命令行运行脚本时,它将在到达该行时停止,并且我将有机会与以前定义的任何变量交互或访问这些变量。 我正在寻找一种用Dart语言实现这一点的方法,但迄今为止没有成功 我看到了对dart:developer库提供的debugger关键字的引用,但是脚本没有允许我进行交互,而是挂起: // bin/my_script.dart import "dart:developer"; // source of debugger(

在Python中,我可以在任何一行代码上插入
breakpoint()
关键字,当我从命令行运行脚本时,它将在到达该行时停止,并且我将有机会与以前定义的任何变量交互或访问这些变量。 我正在寻找一种用Dart语言实现这一点的方法,但迄今为止没有成功

我看到了对
dart:developer
库提供的
debugger
关键字的引用,但是脚本没有允许我进行交互,而是挂起:

// bin/my_script.dart

import "dart:developer"; // source of debugger();

main() {
  var x = 5;
  print("X: ${x}"); //> X: 5

  debugger(); // ... just hangs

  print("END");
}
我还看到了对
控制台
包的引用,但我没有看到它做任何事情:

// bin/my_script.dart

import "package:console/console.dart"; // source of Console.init()

main() {
  var x = 5;
  print("X: ${x}"); //> X: 5

  Console.init(); // ... nothing happens

  print("END");
}

仅供参考:我正在通过dart bin/my_脚本运行此脚本。dart,命令行解决方案是理想的,但使用VS代码文本编辑器的解决方案也足够了。

如果没有附加调试程序,则无法进行调试,这就是为什么从命令行运行会挂起断点的原因,因为您可以按下一条指令进行操作


如果在调试模式Shift+Cmd+R下使用VS Code或Intellij并使用debugger(),它将在那里触发一个断点,您可以分析变量并前进到下一个指令。

Shift命令R确实为我提供了一个“播放”的机会,但当我按“播放”时,它会直接通过debugger()播放没有停止,我根本看不到脚本的任何输出。一定是出了什么问题。我刚刚尝试过,当我在调试模式(播放按钮)下使用
debugger()
时,它会停在那里,让我一步一步地看下一条指令。当脚本为
lib/main.dart
时,它似乎确实起到了作用,但命名文件不一样。当我使用
lib/main.dart
脚本执行此操作时,它确实会停止,我会在左窗格中看到信息,但如何找到可以键入变量名和语句/解释dart表达式的控制台?您可以直接在调试控制台本身(视图>调试控制台)上编写表达式。