VSCode 替换 _$ 而不是自动完成
Posted
技术标签:
【中文标题】VSCode 替换 _$ 而不是自动完成【英文标题】:VSCode replacing _$ instead of autocomplete 【发布时间】:2021-08-30 12:24:29 【问题描述】:我正在使用 VSCode 与 Flutter 进行编码。
另外,我正在使用生成器通过 json_serializable
库自动构建 Json 类。
但是当我输入 _$ 符号来自动完成时
替换为
当我点击 Enter 或 Tab
如何解决这个问题?
【问题讨论】:
【参考方案1】:我尝试重现该问题,并得出结论,这可能是与当前 VS Code Intellisense 相关的问题。
我尝试在名称中使用下划线_
或美元$
调用一些函数。 Intellisense 总是建议完整的函数名称,但是当我确认时,它会在 $
符号处截断名称。
我确实通过以下方式复制:
-
使用类定义文件 .dart
在类中定义一个函数,在某处以美元符号命名(例如 void test$function())
从某处调用该函数。 Intellisense 会提供一个建议,但如果您接受,结果将在美元符号处被截断。
class Test
Test(this.name, this.email);
String name;
String email;
String test$function() =>'test';
尝试使用自动完成功能调用test$function()
,结果为test()
。
android Studio 中不会出现此问题。
似乎与json_serializable
无关或引起。
下划线似乎与问题无关。
我无法对此提供修复,但我确实在 VS Code Github here 中打开了一个问题。
编辑:
这实际上是来自 Dart sdk 的错误。 它将在 Dart v2.14 中修复
您可以阅读here
【讨论】:
以上是关于VSCode 替换 _$ 而不是自动完成的主要内容,如果未能解决你的问题,请参考以下文章
Flex TextArea 自动完成,而不是 TextInput
用于 JavaScript 的 VSCode 智能感知自动完成
VSCode 使用自定义 webpack 解析自动完成 javascript 导入的对象