如何解决当变量在作用域内时,它仍然不引用任何已知的列、表、变量或函数
当我们全选 (CTRL
+ A
) 运行 (F5
) 时,以下查询成功。
let Foo = "foo";
let Bar = (baz: string) {
print baz;
};
Bar(Foo); // errors here
问题是 Kusto Explorer 列出了两个问题。 Foo
和 Bar
都是未知的。我们如何将语言服务介绍给 Foo
和 Bar
以使其为人所知?。
查询运行...
问题列表说“名称‘Bar’不指代任何已知函数”和“名称‘Foo’不指代任何已知列、表、变量或函数。”
我们如何让语言服务相信 Foo
和 Bar
存在?
解决方法
您只需删除空行。 Kusto Explorer 中的 IntelliSense 假定空行之间的任何内容都是您要运行的唯一内容,这就是它在第 7 行抱怨 Foo
和 Bar
的原因。但是,它确实让您选择文本,然后如果您单击“运行”,它将运行您选择的任何内容,而不是空行之间的任何内容,但它不会影响智能感知。
所以如果你写这个,IntelliSense 不会抱怨:
let Foo = "foo";
let Bar = (baz: string) {
print baz;
};
Bar(Foo);
空注释块也可以;在某些情况下,额外的间距有助于提高可读性:
let Foo = "foo";
//
let Bar = (baz: string) {
print baz;
};
//
Bar(Foo);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。