javascript - 可以根据值更改文本颜色吗? ( react native )

标签 javascript reactjs native

我在一个使用 React native 的应用程序中工作,这里是我遇到麻烦的代码:

import React, { Component } from "react";
import { Text, StyleSheet } from "react-native";
import { Content, Card, CardItem, Body, Left } from "native-base";
import { PricingCard } from "react-native-elements";

export default class AppBodyData extends Component {
  render() {
    let articles = this.props.data.map(function (articleData, index) {
      return (
        <PricingCard
          //color='#ff3300'
          wrapperStyle={
            articleData.percent_change_1h >= 0 ? styles.green : styles.red
          }
          info={[
            "1h change: " + articleData.percent_change_1h,
            "24h change: " + articleData.percent_change_24h,
            "7days change: " + articleData.percent_change_7d,
          ]}
          button={{
            title: "More information",
            icon: "info",
            backgroundColor: "#4f9deb",
          }}
        />
      );
    });

    return <Content>{articles}</Content>;
  }
}

const styles = StyleSheet.create({
  green: {
    color: "#00ff00",
  },
  red: {
    color: "#ff0000",
  },
});

module.export = AppBodyData;

我需要的是,如果 articleData.percent_change_1h 变量为正,该变量的颜色 必须为绿色,否则必须为红色。

PricingCard 是 react-native-elements 库的对象:https://react-native-training.github.io/react-native-elements/API/pricing/

提前致谢

最佳答案

你可以使用 ternary operator操作 样式 传递给您的 PricingCard 的 wrapperStyle prop

// Stylesheet.
import { StyleSheet } from 'react-native'

// Card.
<PricingCard wrapperStyle={(articleData.percent_change_1h >= 0) ? styles.green : styles.red} ../>

// Styles.
const styles = Stylesheet.create({
  green: {
    color: '#00ff00'
  },
  red: {
    color: '#ff0000'
  }
})

关于javascript - 可以根据值更改文本颜色吗? ( react native ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47904338/

相关文章:

android - 将 native 库添加到 APK

javascript - 如何在不使用 QML 函数的情况下根据 QQuickItem 的当前值转换其 x 或 y 属性

javascript - ESLint 缺少类组件中的 props 验证

android - 无法在 Android 项目中加载预构建的 OpenSSL 库

javascript - 我可以在 ReactJS 中嵌入原始元素的子元素吗?

javascript - 出于某种原因,无法使用 Reactjs 中的 axios 从 api 获取数据以在屏幕上呈现

java - 性能开销 JNI vs Java vs Native C

javascript - 我想在 angularjs 中为我的倒数计时器添加暂停按钮

javascript - 如何允许特定部分进行多项选择?

javascript - 在同一页面中拥有多个 React 包对性能的影响