Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

327
Visualizações
React Native promete pasar el valor a la variable como cadena

Soy nuevo en React Native. Tengo que crear una promesa y poder obtener los datos de respuesta.

 export async function findColor() { try{ const token = await AsyncStorage.getItem('token'); const id = await AsyncStorage.getItem('id'); const resp = ( await api(token).get(`api/blockgroup/getList`) ).data; const retVal = '"' + resp.data[0].template.mcolor +'"'; console.log (typeof retVal, retVal, 'retvalue'); return retVal; } catch(err){ return { error: true, code: err.request.status, }; } }

Pero cuando llamé a la función me sale algo como esto

{"_U": 0, "_V": 0, "_W": nulo, "_X": nulo}

Descubrí que puedo acceder al valor usando .then() mientras intentaba imprimir el valor en la consola:

 findColor().then(response => console.log(response));

Obtuve el valor de la cadena

"#0eade1"

Pero no sé cómo puedo pasar el valor a una variable como una cadena. Digamos que quiero crear un color variable y pasarle el valor "#0eade1" . ¿Cómo puedo hacer eso?

Realmente aprecio si alguien puede ayudarme. ¡Gracias!

EDITAR: solo quiero dejar esto claro. necesito pasar el valor solo como una cadena porque necesito pasarlo a otro módulo desde la importación. Tengo un módulo de configuración donde necesito cambiar el color de mi tema con el valor del gancho que llamé. esa configuración solo aceptará objetos de cadena, y no sé si debo usar el componente nativo de reacción en el módulo de configuración.

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Podrías crear un gancho que maneje eso. Considere el siguiente fragmento.

 export function useColor() { const [color, setColor] = useState() React.useEffect(() => { // you should add your function in here findColor().then(response => setColor(response)) }, []) return { color, } }

Luego use su gancho en su pantalla, siempre que necesite color .

 const TestScreen = () => { // color can used however you like const {color} = useColor() }

Editar: a juzgar por los comentarios, está utilizando un componente de clase que no permite el uso de ganchos. Todavía podemos hacer lo mismo.

 constructor(props) { ... this.state = { color : "", } } componentDidMount() { findColor().then(response => this.setState({color: response})) } render() { return <Text>this.state.color</Text> }
about 4 years ago · Juan Pablo Isaza Relatório

0

Debería probar esto con esto, puede usarlo como una llamada de función normal.

 export async function findColor() { const token = await AsyncStorage.getItem('token'); const id = await AsyncStorage.getItem('id'); api(token).get(`api/blockgroup/getList`) .then(resp=>{ const retVal = '"' + resp.data[0].template.mcolor +'"'; console.log (typeof retVal, retVal, 'retvalue'); return retVal; }); .catch((err){ return { error: true, code: err.request.status, }; }) }
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda