Radium与useState进行无效的挂钩调用

时间:2019-08-28 01:11:07

标签: reactjs radium

我使用Radium可以工作,但是当我添加useState时出现此错误: 无效的挂接调用。挂钩只能在功能组件的主体内部调用。

我可以在不将功能更改为类的情况下进行修复吗?

import React, {useState} from 'react';
import Radium, {StyleRoot} from 'radium';

const App = ()=>{
  const [tab, updateTab] = useState([1, 2, 3]);

  return (
    <StyleRoot>
      <div className='App'>

      </div>
    </StyleRoot>
  )
};

export default Radium(App);

1 个答案:

答案 0 :(得分:0)

  

我可以在不将功能更改为类的情况下进行修复吗?

是的。 要使此工作有效,请extract a component挂上钩。

const Root = () => {
  const [tab, updateTab] = useState([1, 2, 3]);
  return <div className="App" />;
}

const App = () => {
  return (
    <StyleRoot>
      <Root />
    </StyleRoot>
  )
};

export default Radium(App);