Flutter 自动完成功能在 VSCode 中无法用于包

Posted

技术标签:

【中文标题】Flutter 自动完成功能在 VSCode 中无法用于包【英文标题】:Flutter autocomplete not working in VSCode for packages 【发布时间】:2020-05-20 09:20:04 【问题描述】:

我将整个 Flutter 项目移至一个新文件夹,一切正常。自动完成功能适用于来自flutter的构建文件,例如Container,Column,但是当我尝试使用包(例如提供程序)时,我需要进入pub.dev页面并复制导入,手动导入,然后我必须手动编写“Provider.of(context)”。在旧项目中,我曾经编写 Provider,按 TAB,所有内容都会自动导入,VSCode 会自动完成与 provider 相关的所有内容,而不仅仅是 bult in files。我该怎么办?

【问题讨论】:

你能按照here的建议试试cmd/ctlr + shift + P -> reload windows 它实际上停止了整个自动完成功能,现在它什么也没有完成。我该怎么办?? 我遇到了问题。重新加载没有帮助。 【参考方案1】:

您必须确保您的插件依赖项在dependencies: 部分中提及,而不是在dev_dependencies: 部分中,如下所示:

dependencies:
  flutter:
    sdk: flutter
  cloud_firestore: ^0.13.7
  firebase_auth: ^0.16.1
  fluttertoast: ^7.0.2

【讨论】:

我也遇到了同样的问题,所以我再次同步了依赖项并将它们放在 (dependencies:) 下它工作正常 有时犯这个愚蠢的错误很容易,可能是由于时间限制或其他原因,但它很常见且令人惊讶的是,插件仍然有效,只是自动完成停止工作。【参考方案2】:

我遇到了同样的问题,并通过更改颤振通道解决了这个问题。 问题似乎出在颤振代码附带的飞镖上。

如果您仍然面临这个问题。然后尝试更改您的频道

颤动通道 ...

然后试试

颤振升级

这将再次拉出 dart 版本,并有望解决导入问题。

【讨论】:

以上是关于Flutter 自动完成功能在 VSCode 中无法用于包的主要内容,如果未能解决你的问题,请参考以下文章

自动完成/智能感知不适用于 VSCode 中的 dart/flutter

Flutter/Dart 自动完成功能适用于 VS Code,但不适用于 Android Studio

VSCode 替换 _$ 而不是自动完成

为 Flutter 类禁用 VSCode IntelliSense

VSCode 中的 Flutter 初始化

VSCode在自动完成功能时添加括号