目前,我正在开发一个 UNO 平台应用程序,该应用程序应该在一个文件中显示动态创建的 HTML 代码。WebView
。这在 UWP 和 Android 上运行良好,但在编译后的WebAssembly
。我可以在这里使用某种解决方法吗?我想到了一个简单的IFRAME
,但显然不可能在 XAML 文件中包含 HTML。还是我错了?
更具体地说:WebView 的NavigateToString("<html><head></head><body>BLAH!</body><html>")
方法在 UWP 和 Android 中得到了预期的结果(iOS 未测试)。
一个全功能的 webview 并不容易完成:它与浏览器中的 xss 保护有关。
另一个原因就是功能优先级。 Wasm 仍然是 nventive(Uno 平台背后的 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>
Maybe a <![CDATA[
... ]]>
可以工作...从未尝试过。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)