Cómo Crear una Pantalla de Oficina en Vue 3, Angular 14, o React
En este tutorial, aprenderemos a crear una pantalla de oficina en aplicaciones de Vue 3, Angular 14 y React utilizando la red API. La red API proporciona información de red y conectividad, lo que nos permite manejar escenarios de oficina y brindar una mejor experiencia del usuario. Para verificaciones de alcance más profundas más allá de una simple bandera online/offline, @capgo/capacitor-diagnósticos-de-red puedes probar la accesibilidad de URL, puertos TCP y saludos de WebSocket desde el code nativo.
Requisitos previos
Antes de comenzar, asegúrate de tener instalado lo siguiente:
- Node.js (versión 14 o superior)
- Vue CLI
- Angular CLI
- Create React App
Configuración del Proyecto
Primero, creemos un nuevo proyecto utilizando la herramienta de armado correspondiente para cada marco de trabajo.
Vue 3
Abra su terminal y ejecute el siguiente comando para crear un nuevo proyecto de Vue 3:
vue create offline-screen-vue3
Elige el preset predeterminado y espera a que el proyecto se cree.
Angular 14
Abra su terminal y ejecute el siguiente comando para crear un nuevo proyecto de Angular 14:
ng new offline-screen-angular14
Siga las instrucciones, y cuando se le pregunte por características adicionales, seleccione "Ruta" presionando la tecla de espacio. espacio Wait for the project to be created.
React
Abra su terminal y ejecute el siguiente comando para crear un nuevo proyecto de React:
npx create-react-app offline-screen-react
Wait for the project to be created.
Instalando la red API
Ahora, instalaremos el @capacitor/network paquete, que proporciona la red API.
Abra su terminal y navegue hasta su directorio de proyecto. Luego, ejecute el siguiente comando para instalar el paquete:
npm install @capacitor/network
Para proyectos Capacitor, también ejecute el siguiente comando para sincronizar los archivos del proyecto nativo:
npx cap sync
Asegúrese de tener el Capacitor CLI instalado globalmente ejecutando:
npm install -g @capacitor/cli
Implementando la pantalla de desconexión
A continuación, implementaremos la funcionalidad de pantalla de desconexión en cada marco de trabajo. Mostraremos un mensaje simple cuando el usuario se desconecte.
Vue 3
En tu proyecto de Vue 3, abre el src/main.js archivo y importa el Network módulo desde @capacitor/network:
import { createApp } from 'vue';
import { Network } from '@capacitor/network';
const app = createApp(App);
// Your application setup
app.mount('#app');
Network.addListener('networkStatusChange', status => {
if (status.connected) {
// User is back online
// Hide the offline screen
document.getElementById('offline-screen').style.display = 'none';
} else {
// User is offline
// Display the offline screen
document.getElementById('offline-screen').style.display = 'block';
}
});
const logCurrentNetworkStatus = async () => {
const status = await Network.getStatus();
console.log('Network status:', status);
};
En tu plantilla de aplicación (App.vue), agrega un <div> elemento con un id de offline-screen para mostrar el mensaje de pantalla de desconexión:
<template>
<div id="app">
<div id="offline-screen">
<h1>You are offline</h1>
<p>Please check your internet connection and try again.</p>
</div>
<!-- Your application content -->
</div>
</template>
<style>
#offline-screen {
display: none;
text-align: center;
padding: 20px;
background-color: #f2f2f2;
}
#offline-screen h1 {
font-size: 24px;
}
#offline-screen p {
font-size: 16px;
}
</style>
Ahora, cuando el usuario se desconecte, se mostrará la pantalla de desconexión. Cuando el usuario vuelva a conectarse, la pantalla de desconexión se ocultará.
Angular 14
En su proyecto de Angular 14, abra el archivo src/app/app.component.ts y importe el módulo desde Network En la plantilla de su aplicación ( @capacitor/network:
import { Component } from '@angular/core';
import { Network } from '@capacitor/network';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
constructor() {
Network.addListener('networkStatusChange', status => {
if (status.connected) {
// User is back online
// Hide the offline screen
document.getElementById('offline-screen').style.display = 'none';
} else {
// User is offline
// Display the offline screen
document.getElementById('offline-screen').style.display = 'block';
}
});
}
logCurrentNetworkStatus = async () => {
const status = await Network.getStatus();
console.log('Network status:', status);
};
}
), agregue un elemento con un id de app.component.htmlpara mostrar el mensaje de pantalla de offline: <div> Agregue los siguientes estilos al archivo offline-screen Ahora, cuando el usuario se desconecte, se mostrará la pantalla de offline. Cuando el usuario vuelva a conectarse, la pantalla de offline se ocultará.
<div id="offline-screen">
<h1>You are offline</h1>
<p>Please check your internet connection and try again.</p>
</div>
<!-- Your application content -->
React app.component.css En su proyecto de React, abra el archivo
#offline-screen {
display: none;
text-align: center;
padding: 20px;
background-color: #f2f2f2;
}
#offline-screen h1 {
font-size: 24px;
}
#offline-screen p {
font-size: 16px;
}
__CAPGO_KEEP_0__
__CAPGO_KEEP_1__
__CAPGO_KEEP_2__ src/App.js archivo y importe el Network módulo desde @capacitor/network:
import React, { useEffect } from 'react'
import { Network } from '@capacitor/network'
function App() {
useEffect(() => {
Network.addListener('networkStatusChange', (status) => {
if (status.connected) {
// User is back online
// Hide the offline screen
document.getElementById('offline-screen').style.display = 'none'
}
else {
// User is offline
// Display the offline screen
document.getElementById('offline-screen').style.display = 'block'
}
})
}, [])
const logCurrentNetworkStatus = async () => {
const status = await Network.getStatus()
console.log('Network status:', status)
}
return (
<div id="app">
<div id='offline-screen'>
<h1>You are offline</h1>
<p>Please check your internet connection and try again.</p>
</div>
{/* Your application content */}
</div>
)
}
export default App
Agregue los siguientes estilos al App.css archivo:
#offline-screen {
display: none;
text-align: center;
padding: 20px;
background-color: #f2f2f2;
}
#offline-screen h1 {
font-size: 24px;
}
#offline-screen p {
font-size: 16px;
}
Ahora, cuando el usuario se desconecta, se mostrará la pantalla de desconexión. Cuando el usuario vuelva a conectarse, la pantalla de desconexión se ocultará.
Metodos y Interfaces de Apoyo
El Network API proporciona varios métodos e interfaces para ayudarlo a manejar la conexión de red. Aquí hay algunos de los principales:
getStatus(): Consulte el estado actual de la conexión de red.addListener('networkStatusChange', ...): Escuche cambios en la conexión de red.
Sigue adelante desde la pantalla de desconexión en Vue, Angular, React con Capacitor
Si está utilizando Pantalla de desconexión en Vue, Angular, React con Capacitor para planificar el comportamiento de medios y interfaces nativas, conectarlo con Usando @capgo/capacitor-actividades-en-vivo para la capacidad nativa en Usando @capgo/capacitor-actividades-en-vivo @capgo/capacitor-actividades-en-vivo para el detalle de implementación en @capgo/capacitor-actividades-en-vivo Usando @capgo/capacitor-reproductor-de-videos para la capacidad nativa en Usando @capgo/capacitor-reproductor-de-videos @capgo/capacitor-reproductor-de-videos para el detalle de implementación en @capgo/capacitor-reproductor-de-videos, y Usando @capgo/capacitor-navegación-nativa para la capacidad nativa en Usando @capgo/capacitor-navegación-nativa