У меня есть два примера:
Пример 1:
@Component({
selector: 'app-root',
templateUrl: './app.component.html'
})
export class AppComponent {
options:any = {isOpen: false };
logOptions() {
console.log(this.options);
}
}
Пример 2:
@Component({
selector: 'app-root',
templateUrl: './app.component.html'
})
export class AppComponent {
options:any = {isOpen: false };
@Input() logOptions() {
console.log(this.options);
}
}
в html:
<app-root></app-root>
<script>
document.querySelector('app-root').logOptions();
</script>
В примере 1 возвращается ошибка: document.querySelector(...).logOptions is not a function
В примере 2 возвращается: undefined
У кого-нибудь есть какие-либо идеи?
Example 2
, вы получитеundefined
, потому что вы объявили переменную с именемoptions
в классе, но не присвоили ее ничему, поэтому по умолчанию она будетundefined
, когда вы вызываете функцию, которая записывает значение в консоль. - person Muirik   schedule 15.07.2020this.options
, но вот пример, в котором я вызываю вашуlogOptions()
функцию в ловушке жизненного циклаngOnInit()
и не имею проблем с получением значения: stackblitz.com/edit/ - person Muirik   schedule 15.07.2020ngOnInit()
. - person Muirik   schedule 15.07.2020