如何引用reactjs / JSX中的局部变量?

时间:2015-10-16 04:35:57

标签: javascript reactjs react-jsx

这是我的功能:

  import styles from '../common.css'

  class A extends Component {

  ...

    renderBtn(expanded) {
      let btnStyle = expanded ? 'icon-circle-up' : 'icon-circle-down'
      return (
          <button className={`$styles.icon $btnStyle`}> Hi</button>

      );
    }

  }

不知何故HTML出现如下:

 <button class='_dqwdqweqwefvasdasdas $btnStyle'> Hi</button>
上面的

$btnStyle未解析为存储在变量btnStyle中的值。

我怎样才能让它发挥作用?

2 个答案:

答案 0 :(得分:2)

ES6 template strings使用${}来插入JavaScript,所以我不知道第一个似乎是如何为你工作的!

`${styles.icon} ${btnStyle}`

答案 1 :(得分:1)

试试这个。我不知道$style在这里做了什么,但这就是你将变量用作className的方法。

<button className={'somestring '+ btnStyle+ ' '+anyOtherVariable}> Hi</button>