Вы неправильно поняли фундаментальную архитектуру Angular / Ionic.
Вы не должны пытаться копаться в HTML, как это.
С Angular вы создаете компоненты, а затем модели данных для их управления. На самом деле необходимость прикоснуться к HTML считается "неудачей".
Вместо этого у вас должно быть что-то вроде этого:
<div>
<p *ngIf="IsOnline">I'm online</p>
<p *ngIf="!IsOnline">I'm offline</p>
</div>
А затем в фоновом режиме вы устанавливаете переменную IsOnline.
Вы не используете код типа window.addEventListener('offline',
api для мониторинга подключения.
Вместо этого вы должны использовать плагин Ionic Native, называемый Network, который предоставляет эту информацию кросс-устройству, дружественному к Angular-способу:
Таким образом, вы могли бы вставить некоторый код следующим образом:
// watch network for a disconnection
let disconnectSubscription = this.network.onDisconnect().subscribe(() => {
console.log('network was disconnected :-(');
});
// stop disconnect watch
disconnectSubscription.unsubscribe();
// watch network for a connection
let connectSubscription = this.network.onConnect().subscribe(() => {
console.log('network connected!');
// We just got a connection but we need to wait briefly
// before we determine the connection type. Might need to wait.
// prior to doing any api requests as well.
setTimeout(() => {
if (this.network.type === 'wifi') {
console.log('we got a wifi connection, woohoo!');
}
}, 3000);
});
// stop connect watch
connectSubscription.unsubscribe();
Этот код не собирается просто войти в ваш проект, я просто пытаюсь показать вам направление, в котором вы должны следовать.
Кажется, вы начинаете с самого начала, поэтому на самом деле вам нужно больше узнать об Angular / Ionic. Приведенный выше фрагмент кода требует от вас понимания модулей, наблюдаемых и множества понятий, и неясно, с чего мне начинать объяснять, исходя из того, что вы уже сказали. Я надеюсь, что это поможет вам начать свой путь к ее решению.