Búsqueda de sitios web

angular - Comprobar si se está ejecutando como "ionic serve" para usar una condicional en el programa


¿Hay una manera de detectar que ionic serve CLI está ejecutándose (y entonces no en un dispositivo real) en el programa y usarlo como condicional?

Mi problema: Tengo un plugin de Cordova que devuelve una respuesta a Cordova.

Cuando estaba usando Ripple, ofrecía elegir el valor del callback que se enviaría de vuelta a JavaScript (para emular el resultado del plugin).

Noto que Ionic2 no hace eso cuando ejecuto en un navegador. Así que, para facilitar mi desarrollo y poder probarlo en un navegador (y no compilar constantemente para el dispositivo real), me gustaría poder verificar en el programa si la CLI ionic serve se está ejecutando. En otras palabras: Comprobar si se está ejecutando en un dispositivo real o en un navegador común.

Si se ejecuta en el navegador, entonces usaría un aviso para pedir al usuario que ingrese un valor ficticio para el resultado del plugin de Cordova en lugar del plugin real de Cordova.

Respuesta #1

Ver la documentación de la Plataforma:

Verifica si se está ejecutando en un dispositivo real o en un navegador normal.

Puedes usar la información de la plataforma para hacerlo:

Platform Name   Description
android         on a device running Android.
cordova         on a device running Cordova.
core            on a desktop device.
ios             on a device running iOS.
ipad            on an iPad device.
iphone          on an iPhone device.
mobile          on a mobile device.
mobileweb       in a browser on a mobile device.
phablet         on a phablet device.
tablet          on a tablet device.
windows         on a device running Windows.

Así que puedes hacer algo como esto:

import { Platform } from 'ionic-angular';

@Component({...})
export MyPage {
  constructor(public platform: Platform) {

    if (this.platform.is('mobileweb') || this.platform.is('core')) {
      // This will only print when running on desktop
      console.log("I'm a regular browser!");
    }
  }
}

Artículos relacionados