![]() However, if you are confident that you need to use webviews, then this document is here to help. Remember: Just because you can do something with webviews, doesn't mean you should. Will your webview add enough user value to justify its high resource cost? Is a webview the only way to implement your feature? Can you use the regular VS Code APIs instead? A poorly designed webview can also easily feel out of place within VS Code.īefore using a webview, please consider the following:ĭoes this functionality really need to live within VS Code? Would it be better as a separate application or website? Webviews are resource heavy and run in a separate context from normal extensions. Webviews are pretty amazing, but they should also be used sparingly and only when VS Code's native API is inadequate. Even if you are more interested in those APIs, we recommend reading through this page first to familiarize yourself with the webview basics. This page focuses on the basic webview panel API, although almost everything covered here applies to the webviews used in custom editors and webview views as well. See the webview view sample extension for more details. ![]() In Webview views that are rendered in the sidebar or panel areas.The custom editor API also lets your extension hook into editor events such as undo and redo, as well as file events such as save. Custom editors allow extensions to provide a custom UI for editing any file in the workspace. This makes them useful for displaying custom UI and custom visualizations. In this case, Webview panels are shown in VS Code as distinct editors. With Webview Panels created using createWebviewPanel.Webviews are used in several VS Code APIs: This freedom makes webviews incredibly powerful, and opens up a whole new range of extension possibilities. A webview can render almost any HTML content in this frame, and it communicates with extensions using message passing. Think of a webview as an iframe within VS Code that your extension controls. ![]() Webviews can also be used to build complex user interfaces beyond what VS Code's native APIs support. For example, the built-in Markdown extension uses webviews to render Markdown previews. The webview API allows extensions to create fully customizable views within Visual Studio Code.
0 Comments
Leave a Reply. |