No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

No se trata de lo que quieres comprar, sino de quién quieres ser. Invierte en tu educación con el precio especial

Antes: $249

Currency
$209

Paga en 4 cuotas sin intereses

Paga en 4 cuotas sin intereses
Suscríbete

Termina en:

11 Días
22 Hrs
56 Min
18 Seg

Creación de la función loadInitialRoute

9/13
Recursos

Aportes 11

Preguntas 3

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

por qué PathNameSplit(1) ? si PathNameSplit es un vector string y no una función.

Explicación del funcionamiento del método _loadInitialRoute()

_loadInitialRoute()
{
  // window.location.pathname = "/index.html"

  const pathNameSplit = window.location.pathname.split('/');
  // window.location.pathname.split('/');  Crea un array
  // (2)["", "index.html"]

  const pathSegs = pathNameSplit.length > 1 ? pathNameSplit.slice(1) : '';
  // pathSegs = ["index.html"]

  this.loadRoute(...pathSegs);
  // this.loadRoute("index.html");
}

¿Por qué le pasa un string vacío si pathNameSplit no tiene más de 1 elemento?

Cuando usar under score al inicio del nombre de una función?

En este caso es funcional para el programador, al indicarle que es un método privado.
Si te das cuenta quien lo ejecuta es el contructor de la clase. No debería ser usado por el usuario dado que es un método de inicialización de la rutas para la clase Routes.

nombrar los metodos con _ al inicio tiene algun nombre?, asi como “Camel case”.

la funcion no deberia de estar dentro de la clase?

class Router {

    constructor(routes) {
        this.routes = routes;
        this._loadInitialRoute();
    }
}

_loadInitialRoute() {
    const pathNameSplit = window.location.pathname.split('/');
    const pathSegs = pathNameSplit.length > 1 ? pathNameSplit.slice(1): '';

    this.loadRoute(...pathSegs)
}

Tengo la duda si es que tengo un html grandisimo, lo voy a poner en en el objeto donde dice template?

Quería saber que hacia paso por paso y jugando con la consola:

_loadInitialRoute(){
    const pathNameSplit = window.location.pathname.split('/'); //retorna array despues de quitar el / ["blah.com", "location"]
    const pathSegs = pathNameSplit.length > 1 ? pathNameSplit.slice(1) : ''; //revisa si el array tiene mas de un elemento y regresa el segundo ["location"]

    this.loadRoute(...pathSegs)
}```

split = dividir, le quita el / a la ruta