Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 三元运算符不使用React[HOOK]的内联样式_Javascript_Reactjs_React Hooks - Fatal编程技术网

Javascript 三元运算符不使用React[HOOK]的内联样式

Javascript 三元运算符不使用React[HOOK]的内联样式,javascript,reactjs,react-hooks,Javascript,Reactjs,React Hooks,基本上,我有一个状态是真是假。状态名称为DisplayFirstColorPicker。如果为true,我希望内联样式为const'showColorPicker',如果为false,则应为const'hideColorPicker' 然而,当我运行内联三元运算符时,我得到一个“编译失败”错误 知道怎么了吗 内联代码: 声明: const [displayFirstColorPicker, setDisplayFirstColorPicker] = useState(false) 内联代码

基本上,我有一个状态是真是假。状态名称为DisplayFirstColorPicker。如果为true,我希望内联样式为const'showColorPicker',如果为false,则应为const'hideColorPicker'

然而,当我运行内联三元运算符时,我得到一个“编译失败”错误

知道怎么了吗

内联代码:

声明:

  const [displayFirstColorPicker, setDisplayFirstColorPicker] = useState(false)
内联代码

<div class="firstColorPicker" style={{DisplayFirstColorPicker ? {showColorPicker} : {hideColorPicker}}}>

你在这里做各种奇怪的事情。外部的大括号太多,也不应该使用像
{showColorPicker}
这样的对象简写符号,它将编译为
{showColorPicker:{display:none}


style={DisplayFirstColorPicker?showColorPicker:hideColorPicker}
应该可以做到这一点。

对不起,我还在习惯JSX。一直忘了,一旦我在花括号中,我就可以自由地编写JS,而且我不必把每个常量都用花括号包装。是的,里面是直接的javascript:)所以如果没有更多的样式,有些人可能会做
style={{{display:DisplayFirstColorPicker?'block':'none'}
const showColorPicker = {
    display: "block",
  }

  const hideColorPicker = {
    display: "none",
  }