He movido todo mi texto estático al archivo de constantes y tengo que pasar el nombre y apellido del usuario a una clave en particular. Intenté usar el literal de cadena pero no funciona. ¿Hay alguna forma de pasar los valores de reaccionar al archivo de constantes?
constantes.js
export constants={ 'employeeName': `Hello welcome ${employee.firstname}, ${employee.lastname}` }
Reaccionar componente
import constants from './constants.js' const employee={ firstname:props.firstname, lastname: props.lasname } <div>{constants.employeeName}</div>
Si insiste en usar constantes de cadena en un archivo separado y lo usa y formatea en otro componente, puede usar el método de análisis de esta publicación o alguna biblioteca de formato de cadena como hydrate-text como este:
constantes.js
export const constants = { employeeName: `Hello welcome %s, %s`, };
util.js;
export function parse(str) { var args = [].slice.call(arguments, 1), i = 0; return str.replace(/%s/g, () => args[i++]); }
componente:
import { parse } from "util"; import constants from "./constants.js"; const Employee = () => { const employee = { firstname: props.firstname, lastname: props.lasname, }; return ( <div> {parse( constants.employeeName, employee.firstname, employee.lastname )} </div> ); };
En mi opinión, no es una forma limpia y eficiente de hacer esto, solo puede usar una función y pasarle el empleado como las otras respuestas:
Puede crear un método y pasar un argumento sobre eso.
Ejemplo :
const getFullName = (employee) => { return { 'employeeName': `Hello welcome ${employee.firstname}, ${employee.lastname}` } }; const employee = { firstname: "asif", lastname: "vora" }; const { employeeName } = getFullName(employee); console.log(employeeName);
constante.js:
export const constants= { employeeName: 'Hello welcome'}
Componente de reacción:
import constants from './constants.js' const employee={firstname:props.firstname,lastname: props.lasname} <div>{`${constants.employeeName} ${employee.firstname}, ${employee.firstname}`}</div>