根据条件将样式插入 javascript

问题描述 投票:0回答:1

我正在使用 grid.js 将一些数据放入表中。

在一列中,我有一个图标,我希望它根据我通过的条件改变颜色,如下所示。

style='color: " + cell.amount ? + " 'green' " : " 'red' '

具体来说,我希望金额已满时为绿色,否则为红色。

我遇到了问题;我注意到列中显示了 NaN

有人可以帮助我吗?

const grid = new Grid({
  columns: [
      { 
        name: 'Name',
        formatter: (cell) => html(`<b style='color: " + cell.amount ? + " 'green' " : " 'red' '>${cell}</b>`)
      },
      'Email',
      { 
        name: 'Actions',
        formatter: (_, row) => html(`<a href='mailto:${row.cells[1].data}'>Email</a>`)
      },
   ],
  data: Array(5).fill().map(x => [
    faker.name.findName(),
    faker.internet.email(),
    null
  ])
});

javascript html css background-color gridjs
1个回答
0
投票

您有不需要的额外引号。

由于您使用的是模板文字,因此您可以用

${...}
代替它,而不是串联。

formatter: (cell) => html(`<b style='color: ${cell.amount ? "green" : "red"}'>${cell}</b>`)
© www.soinside.com 2019 - 2024. All rights reserved.