如何在react.js中声明var?

时间:2019-07-12 06:50:32

标签: javascript reactjs

我正在尝试将我的javascript代码集成到现有react.js项目的源代码中。

似乎ESLint不允许var声明,我也不知道为什么。

var distortion = new Tone.Distortion({
  distortion  : 0.6 ,
  oversample  : "3x" 
});

2 个答案:

答案 0 :(得分:0)

在React中的特定条件下不允许使用变量定义。

您不能在类组件中定义它们。但是,您可以在React挂钩(方法)中,但在return语句之前定义变量。

此外,我建议您使用带有const或let的变量定义而不是var。

class SomeComponent extends Component {
 const someVar = '' // invalid
 render() {
   const someVar = '' // valid
 }
}

someComponent = () => {
  const someVar = '' // valid
  return <OtherComponent someValue={someVar} />
}

如果您具有基于类的组件,则可以在类外部定义变量(在类定义之前)。

const someVar = ''
class SomeComponent extends Component {
  render() {
   // use someVar in a hook
  }
}

但是出现了一个问题,为什么不使用状态呢?

答案 1 :(得分:0)

如果将react类用作组件,则不能在内部使用变量,因为类是对象,但是可以为其分配属性:

class rComponent extends React.Component {
  distortion = new Tone.Distortion({
    distortion  : 0.6 ,
    oversample  : "3x" 
  });
  render() {
   //....
  }
}