在反应本机样式表中使用变量将无法识别该变量

2023-12-09

我将颜色作为 props.color 导入到我的功能组件中,并将其设置为状态“tagColor”。当我在样式表中使用 tagColor 作为值来设置背景颜色时,我收到错误“找不到变量 tagColor”

如何在样式表中使用变量?

const Tag = (props) => {
  
  const [tagColor, setColor] = useState(props.color)

  return (
    <View style={styles.container}>
      <TouchableOpacity style={styles.tag} title='tag'>
           
      </TouchableOpacity>
    </View>
  );
}

const styles = StyleSheet.create({
  container: {
    alignItems: "center",
    justifyContent: "center",
    height: 25,
    display: 'flex'
  },
  tag: {
    backgroundColor: tagColor,  
}
});

export default Tag;

嗯,它当然不认识tagColor,它属于不同的范围。注意tagColor是在你的函数组件的范围内,而StyleSheet是不同的范围。

解决这个问题的一种方法是直接传递backgroundColor to the style道具,像这样:

<TouchableOpacity style={{backgroundColor: tagColor}} title="tag">

另一种方法是定义tag你的班级StyleSheet作为接收颜色并返回样式的函数,例如:

const styles = StyleSheet.create({
  container: {
    ...
  },
  tag: tagColor => ({
    backgroundColor: tagColor,  
})
});

然后像这样使用它:

<TouchableOpacity style={styles.tag(tagColor)} title="tag">

如果你没有其他风格,我会选择第一种方式backgroundColor。如果您需要更多样式,请使用第二种方法。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在反应本机样式表中使用变量将无法识别该变量 的相关文章

  • 使用模数按字母顺序对列表进行排序

    我在获取元素列表并按字母顺序对它们进行排序方面没有任何问题 但我很难理解如何使用模数来做到这一点 更新 这是按我的方式工作的代码 但是 我更喜欢下面提供的答案的可重用性 因此接受了该答案
  • 我想检查 $('#td1').text() === "x" 是否?

    我想检查innerHtml是否有X或O 所以我不能再次添加任何其他东西 但它不起作用 添加检查代码后它就停止了 我在这里尝试做一个简单的XO游戏来更熟悉javascript和jquery 我也不确定是否可以用 jQuery 做到这一点
  • React Native this.'function' 不是一个函数

    我正在学习 React Native 和 Redux 这里有很多与我类似的问题 但我很难与我的问题联系起来 当我在另一个方法中调用一个方法时 它不断地返回给我 this some function 不是一个函数 我真的不知道该怎么做 这是我
  • 检查 JavaScript 字符串是否为 URL

    JavaScript 有没有办法检查字符串是否是 URL 正则表达式被排除在外 因为 URL 很可能是这样写的stackoverflow 也就是说它可能没有 com www or http 如果你想检查一个字符串是否是有效的 HTTP UR
  • Meteor:应用程序无法在 0.9.1.1 版本上运行

    出现类似错误 Error TypeError undefined is not a function evaluating Template create anonymous function iron dynamic template j
  • 使用 Angular 下载具有动态 src 的脚本

    Angular 提供了通过动态名称动态加载模板的方法ng include 该部分中的内联 JS 和 CSS 可以正常加载 但没有一个好的方法来下载带有动态 url 的脚本 我们需要下载脚本 相对于调用它们的 html 部分的路径 即我们有一
  • 如何抑制窗口鼠标滚轮滚动...?

    我正在开发嵌入页面中的画布应用程序 我有它 因此您可以使用鼠标滚轮放大绘图 但不幸的是 这会滚动页面 因为它是文章的一部分 当我在 dom 元素上滚动鼠标滚轮时 是否可以阻止鼠标滚轮在窗口上滚动 附加鼠标滚轮 不是 Gecko DOMMou
  • 如何将背景图像仅应用于一个反应页面而不是整个应用程序?

    注册页面示例 register background image linear gradient to right ff5722 0 ff9800 100 margin top 150px important div div div div
  • MVC 在布局代码之前执行视图代码并破坏我的脚本顺序

    我正在尝试将所有 javascript 包含内容移至页面底部 我正在将 MVC 与 Razor 一起使用 我编写了一个辅助方法来注册脚本 它按注册顺序保留脚本 并排除重复的内容 Html RegisterScript scripts som
  • firebase :: 无法读取 null 的属性“props”

    你好 我正在尝试将react router与firebase一起使用 但它给了我这个错误 无法读取 null 的属性 props 这正是代码 我正在其中使用我的反应路由器 向下代码位于作为登录面板组件的组件上 else if this em
  • Javascript 数组到 VBScript

    我有一个使用 Javascript 构建的对象数组 我需要使用 VBScript 读取它 如下例所示 我找不到在 VbScript 代码中循环遍历数组的方法myArray object 这个例子是我的问题的简化 我无法更改页面的默认语言 这
  • 如何使用tampermonkey模拟react应用程序中的点击?

    我正在尝试使用 Tampermonkey 脚本模拟对 React 元素的点击 不幸的是 由于 React 有自己的影子 DOM 所以天真的方法使用document querySelector 不工作 我遇到了一些需要修改 React 组件本
  • Laravel 中只向登录用户显示按钮

    如果我以 John 身份登录 如何才能只显示 John 的红色按钮而不显示 Susan 的红色按钮 测试系统环境 Win10 Laravel5 4 Mysql5 7 19 table class table table responsive
  • 为什么在 Internet Explorer 中访问 localStorage 对象会引发错误?

    我正在解决一个客户端问题 Modernizr 意外地没有检测到对localStorageInternet Explorer 9 中的对象 我的页面正确使用 HTML 5 文档类型 并且开发人员工具报告该页面具有 IE9 的浏览器模式和 IE
  • 如何在类似控制台的环境中运行 JavaScript?

    我正在尝试遵循这里的示例 http eloquentjavascript net chapter2 html http eloquentjavascript net chapter2 html and print blah 在浏览器中运行时
  • 为什么我不能在 AngularJS 中使用 data-* 作为指令的属性名称?

    On the t他的笨蛋 http plnkr co edit l3KoY3 p preview您可以注意到属性名称模式的奇怪行为data 在指令中 电话 Test of data named attribute br
  • 条件在反应本机生产中失败,但在开发中有效

    我创建了一个反应本机应用程序 我需要通过它进行比较 如果属实 就会执行死刑 问题是 该条件适用于 React Native 开发模式 而不适用于 React Native 生产版本 我使用 firebase 作为数据库 也使用 redux
  • Javascript 纪元时间(以天为单位)

    我需要以天为单位的纪元时间 迄今为止 我已经看到过有关如何翻译它的帖子 但几天后就没有了 我对纪元时间很不好 我怎么能得到这个 我需要以天为单位的纪元时间 我将解释为您想要自纪元以来的天数 纪元本身是第 0 天 或第 1 天的开始 无论您如
  • 如何更改此 jquery 插件的时区/时间戳?

    我正在使用这个名为 timeago 的插件 在这里找到 timeago yarp com 它工作得很好 只是它在似乎不同的时区运行 我住在美国东部 费城时区 当我将准确的 EST 时间放入 timeago 插件时 比如 2011 05 28
  • 如何仅在最后一个
  • 处给出透明六边形角度?
  • 我必须制作这样的菜单 替代文本 http shup com Shup 330421 1104422739 My Desktop png http shup com Shup 330421 1104422739 My Desktop png

随机推荐

  • 在 JavaScript 中隐藏/欺骗引用者的最可靠方法是什么?

    通常 引荐来源网址可通过以下方式追踪 JavaScript 的document referrer 请求标头 即PHP SERVER HTTP REFERER 我已经设置了一个键盘演示它显示了这些属性 用于测试目的 要求 原始引用者应该有效地
  • Eclipse 2022-3 不再支持 CVS?

    将Eclipse升级到最新版本2022 3后 我发现官方软件源中似乎不再提供 Eclipse CVS Client 插件 这是过去几个版本安装CVS支持的方式 知道如何安装 CVS 支持吗 Update 对于最新的 Eclipse 版本 请
  • ClassCastException:android.widget.TextView 无法转换为 android.widget.ListView

    我不知道为什么我会得到这个类强制转换异常 我已经做了几次 Project gt Clean 仍然没有成功 请有人帮助我 谢谢 这是 ScheduleFragment java public class ScheduleFragment ex
  • GSM Modem如何处理送达报告?

    我想在应用程序中出于某种目的使用 GSM 调制解调器 我想要的是处理已发送短信列表的短信发送报告 GSM 调制解调器收件箱和发件箱仅限 15 件 每次我阅读收件箱时 GSM 调制解调器都会返回一个列表并清除列表 如何检查已从 GSM 调制解
  • 使用 Jersey + hibernate RESTful Web 服务上传和下载图像

    我决定将图像作为字节数组存储在数据库中 我收到错误 我的实体模型 带有 getter 和 setter Entity Table name USER schema test XmlRootElement public class User
  • ValueError:logits 和标签必须具有相同的形状((无,4)与(无,1))

    我尝试制作一个卷积神经网络来对狗和猫进行分类 我收到标题中提到的错误 从我的搜索中 有人说错误属于tensorflow和keras库的不同版本 有人说这是语法错误 我将把我的代码留在这里 告诉我哪里出错了 IMPORTING LIBRARI
  • if else 语句和 if_else 的不同行为

    我正在尝试创建一个函数 将数据帧的数据类型转换为factor如果列的类型为char否则我不会改变任何东西 但这里的问题是我可以做同样的事情if else声明但不使用if else陈述 这是相同的代码 注意 我正在使用titanic数据集 c
  • 在 PHP 中验证签名的 PDF 文档

    我有一份已签名的 PDF 文档 它是使用 TCPDF 进行签名的 现在我想验证一下 这是我的解决方案 获取签名 pdf 的内容 根据 ByRange字段获取原始内容和签名值 从签名值中获取加密的摘要消息 它是签名值末尾的八位字节字符串 使用
  • 如何将数字转换为文字? [复制]

    这个问题在这里已经有答案了 如何使用 Javascript 将数字转换为单词 显示需要印度卢比和派兹格式 没有内置功能 function test skill var junkVal document getElementById rupe
  • 如何从相机意图获取图像路径?

    我使用 android 2 1 我想从相机意图结果中获取真实路径 我读从 ACTION IMAGE CAPTURE Intent 获取图像路径但它适用于android 2 2 Override protected void onActivi
  • Android Facebook SDK FacebookDialog.shareDialogBu​​ilder 不显示我的描述

    我正在使用 Facebook Android SDK 从我的 Android 应用程序发布共享 将链接设置为 Google Play url 但我想填写我自己的描述以显示 当我从我的应用程序发布时 我的描述会显示在预览中 但是当它显示时 所
  • Apache Spark SQL get_json_object java.lang.String 无法转换为 org.apache.spark.unsafe.types.UTF8String

    我正在尝试使用结构化流从 Apache Spark 中的 MQTT 代理读取 json 流 读取传入 json 的一些属性并将它们输出到控制台 我的代码看起来像这样 val spark SparkSession builder appNam
  • 使用 Flexbox 跨列打破无序列表项

    有没有办法用 Flexbox 来打破无序列表中的列表项 我想创建一个 3 列下拉菜单 例如我的html是 ul li a href a gt Navigation link 2 li li a href a gt Navigation li
  • 关于使用 ASIHttpRequest 下载文件

    我计划使用 ASIHttpRequest 从后端服务器下载文件 在采取行动之前 请在此处发布问题以了解有关此功能的更多信息 如给出的示例源代码 演示下载远程JPG文件 ASIHTTPRequest request request ASIHT
  • Linq To Sql 从函数返回 IQueryable

    好的 我已经成功地完成了以下工作 public IQueryable getTicketInformation int ticketID var ticketDetails from tickets in context tickets j
  • 使用 PowerShell 始终获取通讯组列表的 1500 名成员

    我想获取某个通讯组列表的所有成员 邮件地址 目前我刚刚接待了前1500名会员 我的脚本看起来像这样 group ADSI LDAP CN distListOne OU Groups DC XYZ DC XYZ group member co
  • 从字典列表中获取值列表

    我有一个这样的字典列表 value apple blah 2 value banana blah 3 value cars blah 4 I want apple banana cars 最好的方法是什么 假设每个字典都有一个value键
  • 在这种情况下,新的 JVM 实例或反射会有所帮助吗?

    我之前发布过一个问题 但没有得到明确的解决方案 如何防止JFrame关闭 所以我发布了 SSCCE 可能有助于更好地理解所面临的问题 package myApp import java lang reflect InvocationTarg
  • iPhone内存管理

    我正在开发一个应用程序 我想确保我正确管理内存并释放我应该释放的所有内容 在我的 viewDidLoad 方法中 我分配了一些变量来确定应用于视图的背景 用于国际化 如果我不释放它们 应用程序可以正常工作 问题是 如果我释放变量 应用程序就
  • 在反应本机样式表中使用变量将无法识别该变量

    我将颜色作为 props color 导入到我的功能组件中 并将其设置为状态 tagColor 当我在样式表中使用 tagColor 作为值来设置背景颜色时 我收到错误 找不到变量 tagColor 如何在样式表中使用变量 const Ta