Soy muy nuevo en React. Estoy tratando de convertir un poco de javascript en React.
Es para un código de barras y estoy tratando de controlar el ancho del código de barras contando los caracteres en la cadena generada. Este código funciona bien en JS, pero solo para un valor.
var generatedBarcode = '1234567890' // create barcode chars var charCount = (`${generatedBarcode.length}`); // count barcode chars console.log(charCount) if (charCount == 9){var barcodeWidth = 2.60;} else if (charCount == 10){var barcodeWidth = 2.38;} else if (charCount == 11){var barcodeWidth = 2.24;} else if (charCount == 12){var barcodeWidth = 2.10;} else if (charCount == 13){var barcodeWidth = 1.95;} else if (charCount == 14){var barcodeWidth = 1.85;} // etc. I have worked out the widths else {var barcodeWidth = 0.75;};Me gustaría mucho convertir este código en una función para poder generar múltiples códigos de barras en una página y para cada uno (con una longitud de carácter diferente) calcular el ancho apropiado.
Si me puede señalar en la dirección correcta, estaría muy agradecido. ¡Estoy tratando desesperadamente de entender React!
¡Muchas gracias!
Agregue sus anchos a la matriz y simplemente llame a la función que devuelve su ancho. Si su código de barras comienza con una longitud de 9, simplemente cambie [barcode.length] a [barcode.length - 9]
const barcodeWidths = [2.6, 2.38, 2.24, 2.1, 1.95, 1.85, ...etc.] const getBarcodeWidth = (barcode) => { return barcodeWidths[barcode.length] }