一个功能齐全的 webview 不容易完成:它与浏览器中的 xss 保护有关。
另一个原因只是特征优先级。Wasm 仍然是 nventive(Uno Platform 背后的 cie)的新目标,并且仍然缺少一些功能,无法与 iOS 和 Android 相提并论。关于这一点,请在 github 上打开一个问题并解释一下你缺少什么。
但是你仍然可以做一些事情。您可以像这样在应用程序中创建自定义控件:
[ContentProperty(nameof(HtmlContent))]
public class WasmHtmlContentControl : Control
{
public WasmHtmlContentControl()
: base(htmlTag: "div") // the root HTML tag of your content
{
}
private string _html;
public string HtmlContent
{
get => _html;
set
{
base.SetHtmlContent(html); // this is a protected method on Wasm target
_html = value;
}
}
}
和 XAML:
<ctl:WasmHtmlContentControl>
<!-- xml encoded html -->
<h1>It works!</h1>
</ctl:WasmHtmlContentControl>
也许<![CDATA[
……]]>
可以工作……从未尝试过。