Visual studio code TreeView而不是WebView?

Visual studio code TreeView而不是WebView?,visual-studio-code,treeview,vscode-extensions,Visual Studio Code,Treeview,Vscode Extensions,一旦createTreeView()创建了一个TreeView实例,reveal()将获取TreeItem的派生实现。reveal()不像WebView[Panel]那样采用ViewColumn。vscode扩展API指定ViewColumn的唯一方法是实现TextEditor接口的ExtHostTestEditor和WebView。那么,所有自定义编辑器都必须使用WebView实现吗?树状视图是否仅用于活动栏侧视图 这似乎很奇怪,因为有人警告不要使用WebView,因为它们太重了。此外,还需要

一旦createTreeView()创建了一个TreeView实例,reveal()将获取TreeItem的派生实现。reveal()不像WebView[Panel]那样采用ViewColumn。vscode扩展API指定ViewColumn的唯一方法是实现TextEditor接口的ExtHostTestEditor和WebView。那么,所有自定义编辑器都必须使用WebView实现吗?树状视图是否仅用于活动栏侧视图


这似乎很奇怪,因为有人警告不要使用WebView,因为它们太重了。此外,还需要付出额外的努力,使WebView的外观与编辑器相匹配。使用WebView,我还没有找到任何不使用WebView的自定义编辑器。验证WebView方法将有助于避免陷入一大堆兔子洞。谢谢。

这些类型的视图有不同的用例。下面是每个VS代码1.28的简要概述:

TreeView

TreeView可以显示在侧栏中,例如在资源管理器或源代码管理部分。树视图使用数据驱动程序api,其中VS代码控制表示。这意味着您可以免费获得很多,但无法完全自定义树视图的行为

如果要添加其他数据视图,请使用树状视图。树视图的一个很好的例子是自定义文件资源管理器,它显示编辑器的大纲,或显示资源列表

WebView

网络视图可以在编辑器中显示。它们可以包含任何种类的html内容,但您完全负责该内容的用户体验


如果您需要自定义用户体验或需要呈现完全自定义的数据视图,请使用webview。

感谢您的确认。如果API和UI在不使用WebView方法的情况下对扩展更加开放,那就太好了。CSS是否公开并可导入到WebView?如果我的WebView包含文本,取决于CSS的编写方式,WebView HTML可以引用相同的CSS选择器。不,您不能将VS代码的CSS导入WebView。它是孤立的,就像一个沙盒一样