2016-11-15 15 views
13

Chciałbym użyć console.log wewnątrz szablonu inline, ale nie mogę znaleźć żadnych wskazówek.kątowa 2 szablon użyj konsoli. Log

@Component({ 
    selector:"main", 
    providers: [ItemService], 
    template:` 
    <ul> 
    <li *ngFor="let item of items"> 
     {{console.log(item)}} <----- ??? 
     <p>{{item.name}}</p> 
    </li> 
    </ul> 

    ` 
}) 
export class HomeComponent { 
    private items: Array<ItemModel>; 

    constructor() {} 
} 
+2

To nie ma sensu. 'console.log' nie zwraca niczego, więc wiążisz' undefined' w swoim HTML. Co tak naprawdę próbujesz osiągnąć? Jeśli chcesz zobaczyć szczegóły każdego przedmiotu do celów debugowania, rozważ umieszczenie '{{item | json}} 'w swoim szablonie, lub po prostu iteruj po liście i' loguj 'ją w klasie, gdziekolwiek uzyskasz do niej dostęp. – jonrsharpe

+1

@jonrsharpe Chciałbym tylko sprawdzić element, a następnie usunąć konsolę.log (element) – emvidi

+1

Ale co znaczy "* sprawdź element" * faktycznie * znaczy *? Jeśli chcesz zobaczyć jego zawartość, użyj rury JSON, tak jak sugerowałem Güntera. Jeśli nie, wyjaśnij, co * robisz * chcesz - dlaczego chcesz to zrobić na konsoli? – jonrsharpe

Odpowiedz

23

Nie można uzyskać dostępu globalnych, statykę, ...

Można tylko właściwości dostępu składnika widok należy.

Możesz dodać

log(val) { console.log(val); } 

do swojego urządzenia i używać go jak

{{log(item)}} 

ale bądź przygotowany to być zalogowany dość często (co wykrywania zmian upływem czasu).

Do debugowania Wolę

{{item | json}} 
+0

@Guenter Ok Widzę, co masz na myśli – emvidi

5

Lepszy sposób to zrobić:

W ten sposób można uzyskać dostęp do wszystkich właściwości konsoli na stronie szablonu


Strona komponentu:

export class AppComponent { 
    console = console; 
} 

Szablon strony:

{{ console.log('----------------> Logging') }} 
{{ console.warn('----------------> Warning') }} 
{{ console.error('----------------> error') }} 

WORKING DEMO

+0

, czy mają jakieś wady? – user2080105

+1

@ user2080105, nie będzie po prostu konsola za każdym razem odświeża widok. –

Powiązane problemy