### File

`src/app/shared/json-viewer/json-viewer.component.ts`

### Implements

`OnInit`

### Metadata

selector | `hi-json-viewer`
styleUrls | `./json-viewer.component.scss`
templateUrl | `./json-viewer.component.html`

### Index

###### Methods
ngOnInit
###### Inputs
obj

### Constructor

`constructor(route: ActivatedRoute)`
Defined in src/app/shared/json-viewer/json-viewer.component.ts:13
Parameters :
Name | Type | Optional
route | `ActivatedRoute` | No

### Inputs

obj
Type : `any`
Defined in src/app/shared/json-viewer/json-viewer.component.ts:13

### Methods

ngOnInit
`ngOnInit()`
Defined in src/app/shared/json-viewer/json-viewer.component.ts:17
Returns : `void`

    import { Component, OnInit, Input } from '@angular/core';
    import { ActivatedRoute } from '@angular/router';

    import * as _ from 'lodash';

    @Component({
      selector: 'hi-json-viewer',
      templateUrl: './json-viewer.component.html',
      styleUrls: ['./json-viewer.component.scss'],
    })
    export class JsonViewerComponent implements OnInit {
      // MODE 1: use directly in components
      @Input() obj: any;

      constructor(protected route: ActivatedRoute) {}

      ngOnInit() {
        // MODE 2: use in router
        if (this.route.snapshot.data.path) {
          const path = this.route.snapshot.data.path;

          // try parent data first
          this.obj = _.get(this.route.parent, `snapshot.data.${path}`);

          if (this.obj == null) {
            // try self data then
            this.obj = _.get(this.route.snapshot.data, path);
          }
        }
      }
    }

    <!--
      ~ Licensed to the Apache Software Foundation (ASF) under one
      ~ or more contributor license agreements.  See the NOTICE file
      ~ distributed with this work for additional information
      ~ regarding copyright ownership.  The ASF licenses this file
      ~ to you under the Apache License, Version 2.0 (the
      ~ "License"); you may not use this file except in compliance
      ~ with the License.  You may obtain a copy of the License at
      ~
      ~     http://www.apache.org/licenses/LICENSE-2.0
      ~
      ~ Unless required by applicable law or agreed to in writing,
      ~ software distributed under the License is distributed on an
      ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
      ~ KIND, either express or implied.  See the License for the
      ~ specific language governing permissions and limitations
      ~ under the License.
      -->

    <pre>{{ obj | json }}</pre>

`./json-viewer.component.scss`

Legend
Html element
Component
Html element with directive

# results matching ""

# No results matching ""