Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 如何在react(浏览器扩展)中设置默认值或存储值_Reactjs_Google Chrome Extension_Firefox Addon_Antd_Browser Extension - Fatal编程技术网

Reactjs 如何在react(浏览器扩展)中设置默认值或存储值

Reactjs 如何在react(浏览器扩展)中设置默认值或存储值,reactjs,google-chrome-extension,firefox-addon,antd,browser-extension,Reactjs,Google Chrome Extension,Firefox Addon,Antd,Browser Extension,我对react几乎没有经验,我正在使用reactJS开发一个浏览器扩展(chrome和firefox),并在用户登录后使用它,即使UI设置为我预期的默认值,但功能尚未实现。但是,在用户选择一个选项后,该功能就会工作 以下是我的状态: ... state { mode: 'mode-1' } ... 我的职能: onChange = e => { let newMode = e.target.value this.setState({ mode: ne

我对react几乎没有经验,我正在使用reactJS开发一个浏览器扩展(chrome和firefox),并在用户登录后使用它,即使UI设置为我预期的默认值,但功能尚未实现。但是,在用户选择一个选项后,该功能就会工作

以下是我的状态:

... 
 state {
  mode: 'mode-1'
 }
...
我的职能:

  onChange = e => {
   let newMode = e.target.value

   this.setState({
     mode: newMode
    })
    this.handleChanges(newMode)
 };

  handleChanges=(setMode)=> {
   chrome.storage.local.set({ 'mode': setMode })
 }
  getStoredMode= () => {
   chrome.storage.local.get(['mode'], (result) => {
   ...
  }
 }
  componentDidMount () {
   this.getStoredMode()
  }
我的无线电组件(Ant设计):


模式1
模式2
模式3
任何关于使这个单选按钮工作的建议都将不胜感激
谢谢

我检查了你的代码沙箱。如果chrome存储器中没有任何内容,您应该添加一个检查,然后从
状态
获取一个默认值

 storedModeInLocalStorage = () => {
     chrome.storage.local.get(['mode'], function(result) {
        let value = result.mode || this.state.mode;
        console.log('Value currently is ' + value );
     });

  };

能否提供在线工作代码段?我尝试在此处重新创建代码,但由于它是浏览器扩展,因此我必须使用chrome.storage API:
 storedModeInLocalStorage = () => {
     chrome.storage.local.get(['mode'], function(result) {
        let value = result.mode || this.state.mode;
        console.log('Value currently is ' + value );
     });

  };