我怎样才能使用类元素的亚型DartType从analyzer
包装?
例如,如果类型是List<String>
,我想得到String
. 如果类型是generic
.
另一个更为复杂的例子是Map<String, String>
,我想要得到的亚型的列表,在这种情况下:[String, String]
。
一切正常,直到几天前。每当我创建新的小部件或创建一些文件并想要使用它们时,我都不会手动键入,import package:...
而是开始键入该类的名称,然后按ctrl + .
它提供的Quick fix
es列表,import package:...
直到最近总是建议。没有对 Windows / Flutter / Dart / VS Code 进行任何更改,除非我在遵循此建议后安装了svg-explorer-extension(我非常怀疑这会影响任何事情,但它仍然更新了一些 x64 c++ 发行版)。
现在,当我尝试在我创建的新文件中使用现有文件(所有这些文件都在 */lib 文件夹中)时,Quick fix
菜单提供了除import package:...
选项之外的所有选项,这使得开发过程足够慢,无法在此处提出问题。
“恢复”该功能的唯一方法是Developer: Reload Window
在 VS Code 中运行,它会停止调试会话,重新启动Dart Analyzer
,然后在接下来的几分钟内一切似乎都没有问题,直到它完全消失。
如何不“失去”导入功能?我的项目相当大(22k 行),有 30 多个依赖项。我尝试从 VS Code 重新安装 flutter SDK、flutter 和 dart 扩展,但没有帮助。
你有什么建议?这个问题值得在 GitHub 上为 Flutter/Dart/Flutter 扩展提交问题吗?
如何使用Dart的分析器 API获取字段的初始值表达式的类型?
class MyClass {
var prop = <initial value expression>;
}
Run Code Online (Sandbox Code Playgroud)
例如'text'
,如果初始值表达式,我想得到String
.如果是函数调用,我想获得函数的返回类型.