• Empleos
  • Sobre nosotros
  • profesionales
    • Inicio
    • Empleos
    • Cursos y retos
    • Preguntas
    • Profesores
  • empresas
    • Inicio
    • Publicar vacante
    • Nuestro proceso
    • Precios
    • Pruebas Online
    • Nómina
    • Blog
    • Comercial
    • Calculadora de salario

0

126
Vistas
Alguna función para preparar cadenas en Typescript. Se necesita una solución más elegante.

Tengo una función para preparar una cadena para una consulta de búsqueda. Pero parece tan difícil que se necesita una solución más elegante. ¿Tal vez alguien pueda echar un vistazo y proporcionar algo mejor? Es func original.

 export const transformedSortFunc = (sortingPath) => { let transformPath; if (sortingPath) { if (sortingPath[0] === '-') { const sortingValue = get(SORTING_PATH_MAP, sortingPath.slice(1)); transformPath = sortingValue ? `-${sortingValue}` : undefined; } else { transformPath = get(SORTING_PATH_MAP, sortingPath); } } return transformPath || sortingPath; }; const SORTING_PATH_MAP = { asset: 'asset.type' }

Los parámetros de entrada pueden ser

 const conditional = [ 'id', 'asset', 'conditional', '-id', '-asset', '-conditional' , ]

Estoy usando lodash.

Para algunas líneas entrantes, necesito agregar una continuación. Para algunos, no. Las líneas pueden tener un signo menos, así que agregué controles adicionales. Termina pareciendo muy complicado.

almost 3 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

¿Quizás esto funcione para ti?

 tsf=s=>SORTING_PATH_MAP[(s??"").replace(/^-/,"")] ?? s;

tsf() eliminará un encabezado opcional - mientras busca en SORTING_PATH_MAP y usará el resultado si existe; de lo contrario, devolverá s directamente.

almost 3 years ago · Juan Pablo Isaza Denunciar

0

Tal vez una organización diferente:

 const transformedSortFunc = (sortingPath) => { if (!sortingPath) return sortingPath; const negative = sortingPath[0] === '-' ? '-' : ''; const sortingValue = negative ? sortingPath.slice(1) : sortingPath; const transformPath = get(SORTING_PATH_MAP, sortingValue); return transformPath ? `${negative}${transformPath}` : sortingPath; };
almost 3 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 Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recomiéndame algunas ofertas
Necesito ayuda