У меня есть всплывающее окно google-chrome с текстовым полем. Когда пользователь вводит текстовое поле, текст сохраняется в chrome локальном хранилище. Когда всплывающее окно закрывается и затем снова открывается, текстовое поле должно автоматически заполняться последним сохраненным текстом. Он работает отлично, за исключением того, что когда я закрываю и открываю всплывающее окно, текстовое поле кажется пустым и не заполняется автоматически, пока я не нажму на текстовое поле. Я знаю, что значение изменяется прямо при открытии всплывающего окна, поскольку оно регистрируется в консоли, я просто не вижу изменения, пока не нажму. Любая идея, что я делаю неправильно?
app.compon enet. html
<div>
<mat-form-field>
<mat-label>Input</mat-label>
<textarea matInput [(ngModel)]='myText' (ngModelChange)="saveChanges()"></textarea>
</mat-form-field>
</div>
app.component.ts
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
ngOnInit() {this.restore()};
title = 'dataStoreTest';
myText = '';
saveChanges() {
chrome.storage.local.set({storedText: this.myText});
console.log('save');
}
restore(){
let self = this;
chrome.storage.local.get( ['storedText'], function(result){
self.myText = result.storedText;
console.log(result.storedText +' Was restored');
});
}
}