Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

122
Vistas
Javascript: cómo agregar una barra inclinada opcional a un literal de plantilla

Así que estoy tratando de tener dos argumentos opcionales y una barra inclinada opcional. La razón por la que necesito una barra inclinada opcional es porque la URL base es simplemente localhost:3000/web/reserve no localhost:3000/web/reserve/ . Los argumentos vacíos predeterminados funcionan como se esperaba cuando no pasan nada a webpageCheck sin embargo, no puedo hacer que funcione el (/) opcional. Si hiciera http://localhost:3000/web/reserve/${label}${count} fallaría al llamar a webpageCheck porque no hay una barra diagonal al final. ¿Alguien sabe como hacer esto?

 const web = { label: 'Hello', count: '10', }; const webpageCheck = (label = '', count = '') => { const optionalSlash = '/' cy.url().should( 'eq', `http://localhost:3000/web/reserve${optionalSlash + label}${optionalSlash + count}` ); }; webpageCheck()
about 4 years ago · Juan Pablo Isaza
3 Respuestas
Responde la pregunta

0

Por lo tanto, parece que la barra inclinada optionalSlash debería estar en la cadena antes de la label o el count , y si faltan la label o el count , omitimos agregar la barra inclinada optionalSlash para esa variable. Si eso es cierto, podría hacer un ternario simple al construir la cadena.

 `http://localhost:3000/web/reserve${ label ? optionalSlash + label : '' }${ count ? optionalSlash + count : ''}`
about 4 years ago · Juan Pablo Isaza Denunciar

0

Puede recopilar las partes en una matriz, filtrarlas por booleanos y unirlas con el separador deseado.

 const web = { label: 'Hello', count: '10' }, webpageCheck = (label = '', count = '', separator = '/') => ['http://localhost:3000/web/reserve', label, count] .filter(Boolean) .join(separator); console.log(webpageCheck()); console.log(webpageCheck(web.label)); console.log(webpageCheck(web.label, web.count));

about 4 years ago · Juan Pablo Isaza Denunciar

0

Debería intentar definir una cadena con su lógica, algo como esto:

 const web = { label: 'Hello', count: '10', }; const webpageCheck = (label = '', count = '') => { //Logic example let addressOptionsString=(label!==''? ("/" + label):'') + (count!==''? ("/" + count):'') cy.url().should( 'eq', `http://localhost:3000/web/reserve${adressOptionsString}` ); }; webpageCheck()
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda