Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/38.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.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
Css 为react表中的getTrProps设置条件背景线性渐变未正确呈现_Css_Reactjs_React Table - Fatal编程技术网

Css 为react表中的getTrProps设置条件背景线性渐变未正确呈现

Css 为react表中的getTrProps设置条件背景线性渐变未正确呈现,css,reactjs,react-table,Css,Reactjs,React Table,我试图在我的react表中设置一行的样式,这样当某一行的数据发生变化时,背景会有一个线性渐变应用于该行的背景。我已经尝试了一些方法,并查找了他们的文档中的示例,但运气不佳 我已经尝试了一些方法,并查找了他们的文档中的示例,但运气不佳 我将线性梯度作为一个变量,然后将其插入条件中,如下所示: const gradient = { linearGradient: `(to left, #27293d 99%, #344675 1%)` } 与所述状态相关联的列如下: { H

我试图在我的react表中设置一行的样式,这样当某一行的数据发生变化时,背景会有一个线性渐变应用于该行的背景。我已经尝试了一些方法,并查找了他们的文档中的示例,但运气不佳

我已经尝试了一些方法,并查找了他们的文档中的示例,但运气不佳

我将线性梯度作为一个变量,然后将其插入条件中,如下所示:

const gradient = {
  linearGradient: `(to left, #27293d 99%, #344675 1%)`
}
与所述状态相关联的列如下:

    {
      Header: 'Status',
      accessor: 'status',
      Cell: row => (
        <div style={{
          width: `${row.value}%`
        }}>
          <span>
            { 
              row.value === 'created' ?  <GreenStatusCircle /> :
              row.value === 'awaiting_driver' ?  <YellowStatusCircle /> :
              row.value === 'delivered' ? <RedStatusCircle /> : "None Found"
            }
          </span>
        </div>
      )
    },
{
标题:“状态”,
访问者:“状态”,
单元格:行=>(
{ 
row.value==“已创建”?:
row.value==='等待驱动程序'?:
row.value==“已交付”?:“未找到”
}
)
},
它应该使用线性渐变进行渲染,但我所有的行都是红色的。我已经看了下面的示例:


看起来我做得很好,但无法正确渲染。

您可以将其作为HTML属性传递,但不能作为样式传递

而不是:

const gradient = {
  linearGradient: `(to left, #27293d 99%, #344675 1%)`
}
换成

const gradient = {
  someColor: 'linear-gradient(to left, #27293d 99%, #344675 1%)'
}
我们把它当作

const getTrProps = (rowInfo) => {
    if (rowInfo) {
      return {
        style: {
          height: `60px`,
          padding: `5px`,
          margin: `5px`,
          borderRadius: `5px`,
          backdropFilter: `blur(15px)`,
          background: rowInfo.status === 'created' ? gradient.someColor: `red`
        }
      }
    }
    return {};
  }

示例:

rowInfo.status==“created”
返回false。很难说为什么这是你这里的代码。为了清晰起见,我会编辑它,这是我的错。
const getTrProps = (rowInfo) => {
    if (rowInfo) {
      return {
        style: {
          height: `60px`,
          padding: `5px`,
          margin: `5px`,
          borderRadius: `5px`,
          backdropFilter: `blur(15px)`,
          background: rowInfo.status === 'created' ? gradient.someColor: `red`
        }
      }
    }
    return {};
  }