如何调用存储在 Store.js (React-Flux) 中的组件中的值

Posted

技术标签:

【中文标题】如何调用存储在 Store.js (React-Flux) 中的组件中的值【英文标题】:How to call the value in component, which is stored in Store.js (React-Flux) 【发布时间】:2016-12-16 13:32:05 【问题描述】:

我对 Flux 很陌生,而且我很了解如何通过 Flux 存储价值。 我已经将值存储在通量的 store.js 中的一些变量中。 但是我现在想在反应组件中使用该值,任何人都可以指导我,如何做到这一点。 我正在尝试这样 像这样的组件文件-

           AppActions.addItem(currentObject.username,currentObject.password);
            var test = AppStore.addChangeListener(this.action);
            console.log(test);

action 是我试图调用的值。

我的 Store.js 看起来像这样

  var AppStore = assign(, EventEmitter.prototype, 
      emitChange: function () 
          this.emit(CHANGE_EVENT);
      
   );

AppDispatcher.register(function (callback) 
    //console.log(username);
    //console.log(password);
    var action = callback.action;
    //console.log(action);
    return true;

);

在这方面帮助我。谢谢

【问题讨论】:

【参考方案1】:

这可能不是一个直接的答案,但如果您要开始一个新应用程序,我建议您使用 Redux 和 react-redux。

Redux 是 javascript 应用程序的可预测状态容器。

它可以帮助您编写行为一致、在不同环境(客户端、服务器和本机)中运行并且易于测试的应用程序。最重要的是,它提供了出色的开发者体验,例如live code editing combined with a time traveling debugger。

根据我的个人经验,我可以说它更清晰、更具描述性和可维护性。它是一个非常小的库,所以很容易理解一切是如何工作的。这可能是解决您问题的好方法。

Todo app example 您还可以查看很棒的 egghead.io 免费教程 - Getting Started with Redux

这是作者 Dan Abramov 的the answer about the redux benefits

【讨论】:

以上是关于如何调用存储在 Store.js (React-Flux) 中的组件中的值的主要内容,如果未能解决你的问题,请参考以下文章

使用 store.js 存储的数据是不是持久保存到手机?可以备份到云端吗?

本地存储localStorage以及它的封装接口store.js的使用

使用 @reduxjs/toolkit 中的 configureStore 时如何重置 Redux Store 的状态?

vuejs2:如何将 vuex 存储传递给 vue-router 组件

localStorage溢出问题

在电话间隙中使用本地存储