如何将变量放入报价中

时间:2018-11-23 00:27:43

标签: reactjs typescript

我有以下代码,

row: {
  '&:nth-of-type()': {
    backgroundColor: theme.palette.secondary.dark,

  },

我希望将状态变量(this.state.index)放在大括号内,但是当我尝试与“ +”串联时

 row: {
  '&:nth-of-type(' + this.state.index + ')': {
    backgroundColor: theme.palette.secondary.dark,

  },

我收到一个类型错误,说“预期参数为1,但得到2”,是否有任何想法可以解决或解决这个问题?

代码块使用的是材质的UI库(自定义表格),我很确定这只是我的语法错误,而且我不太确定为什么

参考:https://material-ui.com/demos/tables/

const styles = (theme: Theme) =>
createStyles({
root: {
  height: 500,
  width: '100%',
  marginTop: theme.spacing.unit * 3,
  overflowX: 'auto',
},
table: {
  minWidth: 700,
},
row: {
  '&:nth-of-type()': {
    backgroundColor: theme.palette.secondary.dark,

  },
},
});

1 个答案:

答案 0 :(得分:0)

const styleObj = {
  root: {
    height: 500,
    width: "100%",
    marginTop: theme.spacing.unit * 3,
    overflowX: "auto"
  },
  table: {
    minWidth: 700
  },
  row: {}
};

styleObj.row['&:nth-of-type(' + this.state.index + ')'] = {
  backgroundColor: theme.palette.secondary.dark
};

const styles = (theme: Theme) => createStyles(styleObj);