我想在点击事件后打开一个新窗口,并显示一个xml结构。我不希望浏览器解释我的xml。
我试过这个:
window.open('data:text/xml;charset=utf-8,<?xml version="1.0" encoding="UTF-8"?><RootTag>'+xml+'</RootTag>', "", "_blank")
有了铬,这就不起作用了。
这里有两个问题
-
要打开窗口,请使用弹出/模式控件(例如NgBootstrap modal(或使用角度路由导航到不同的页面。
-
为了只显示xml,请在插值中编写它。像这样的东西。
<div style="white-space:pre; font-size:12px; font-family:monospace;">{{getXML()}}</div>
在组件中,
getXML() {
return "<RootTag>xml</RootTag>";
}
请查找示例代码。
我在组件.ts 中用这段代码解决了这个问题
let blob = new Blob([text], {type: 'text/xml'});
let url = URL.createObjectURL(blob);
window.open(url);
URL.revokeObjectURL(url);
这将打开一个新窗口,其中的视图仅用于xml。