1. public toTreeNode(position: string, level: number): void {
    2. const e = document.querySelectorAll('.container-compare-tree');// 获取dom
    3. const left = e[0];// 左treedom
    4. const right = e[1];// 左treedom
    5. if (level === 1) { // 域节点
    6. if (position === 'left') {
    7. setTimeout(() => {
    8. const element = this._el.nativeElement.querySelector
    9. (`#nodeRight${this.leftShemaid}`);
    10. right?.scrollTo(0, element?.offsetTop - 250);
    11. }, 500);
    12. } else {
    13. setTimeout(() => {
    14. const element = this._el.nativeElement.querySelector
    15. (`#nodeLeft${this.leftShemaid}`);
    16. left?.scrollTo(0, element?.offsetTop - 250);
    17. }, 500);
    18. }
    19. }
    20. }
    1. const copyTree = JSON.parse(JSON.stringify(this.searchDatabaseList));
    2. this.databaseList = copyTree.filter((node) =>
    3. this.filterData(node, (ele) => {
    4. return ele.title.indexOf(this.searchValue) >= 0;
    5. })
    6. );
    7. public filterData(node: any, filter: any): any {
    8. let flag = false;
    9. if (filter(node)) {
    10. flag = true;
    11. } else if (node.children instanceof Array) {
    12. const dataCh = node.children.filter((ele) =>
    13. this.filterData(ele, filter)
    14. );
    15. node.children = dataCh;
    16. if (node.children.length > 0) {
    17. flag = true;
    18. }
    19. }
    20. return flag;
    21. }