Javascript Angular2 typescript-打印漂亮的XML
我从服务器获取了以下XML字符串:Javascript Angular2 typescript-打印漂亮的XML,javascript,xml,angular,typescript,pretty-print,Javascript,Xml,Angular,Typescript,Pretty Print,我从服务器获取了以下XML字符串: <find-item-command xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" find-method="Criteria" item-class="com" only-id="false" xsi:schemaLocation=""> <criteria> <criterion> <descriptors> <descriptor>D
<find-item-command xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" find-method="Criteria" item-class="com" only-id="false" xsi:schemaLocation=""> <criteria> <criterion> <descriptors> <descriptor>DPSystemEventItem</descriptor> </descriptors> <value>cluster.manager.active</value> </criterion> </criteria> </find-item-command>
<pre>{{xmlString | xml}}</pre>
DPSystemEventItem cluster.manager.active
但我想在我的模块中美化它:
<find-item-command
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" find-method="Criteria" item-class="com" only-id="false" xsi:schemaLocation="">
<criteria>
<criterion>
<descriptors>
<descriptor>DPSystemEventItem</descriptor>
</descriptors>
<value>cluster.manager.active</value>
</criterion>
</criteria>
</find-item-command>
DPSystemEventItem
cluster.manager.active
打印美化的最佳方式是什么?您可以为其创建一个自定义管道,用于遮光罩下
npm install -S vkbeautify
自定义xml
管道示例:
import * as vkbeautify from 'vkbeautify';
import { Pipe, PipeTransform } from "@angular/core";
@Pipe({
name: 'xml'
})
export class XmlPipe implements PipeTransform {
transform(value: string): string {
return vkbeautify.xml(value);
}
}
在app.module中声明自定义管道,例如:
import { AppComponent } from './app.component';
import { XmlPipe } from '...';
@NgModule({
declarations: [
AppComponent,
...,
...,
XmlPipe
],
...
然后可以在模板中使用自定义管道,如下所示:
{{xmlString}xml}
这也适用于我。我使用Prism.js来突出显示语法。找不到模块“vkbeautify”,有人能帮忙吗