gpt4 book ai didi

javascript - React-Flux : Error with AppDispatcher. 寄存器

转载 作者:数据小太阳 更新时间:2023-10-29 04:03:01 25 4
gpt4 key购买 nike

我正在尝试在 Flux-React 中设置最基本的应用程序。它的唯一目标是触发一个 Action ,该 Action 通过 Dispatcher 发送到已向 Dispatcher 注册的 Store。存储将 payload 记录到控制台。

除了 Store 之外的一切都运行良好,但是一旦它点击 AppDispatcher.register,Flux 就会抛出以下错误:

Uncaught TypeError: Cannot set property 'ID_1' of undefined

这是导致错误的文件代码,但我已将整个项目放在 https://github.com/bengrunfeld/react-flux-dispatcher-error 上,您可以在 src/js/stores/AppStores.js 中找到有问题的文件

var AppDispatcher = require('../dispatcher/AppDispatcher');
var EventEmitter = require('events').EventEmitter;
var AppConstants = require('../constants/AppConstants');
var assign = require('object-assign');


var CHANGE_EVENT = 'change';

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

AppDispatcher.register(function(payload){
console.log(payload);
return true;
})

module.exports = AppStore;

最佳答案

由于 Facebook Flux 的圣经比例文档匮乏,我不知道我使用的是以前版本的代码。

AppDispatcher.js 中,您需要使用 new 关键字按以下方式定义 AppDispatcher:

var Dispatcher = require('flux').Dispatcher;
var assign = require('object-assign');

var AppDispatcher = assign(new Dispatcher(), {
handleViewAction: function(action) {
this.dispatch({
source: 'VIEW_ACTION',
action: action
});
}
});

module.exports = AppDispatcher;

这是一个包含工作代码的存储库链接:https://github.com/bengrunfeld/react-flux-simple-app

关于javascript - React-Flux : Error with AppDispatcher. 寄存器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28822881/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com