ReactJS 存储未注册
ReactJS Store not registered
我得到:
Error: Error: Store UserStore was not registered.(…)
在我的组件中:
import React from 'react';
import JobList from './JobList';
import RightPanel from './RightPanel';
import JobStore from '../../stores/JobStore';
import LoadJobsScreen from '../../actions/jobs-screen/LoadJobsScreen';
import UserStore from '../../stores/UserStore';
import LoadUsers from '../../actions/global/LoadUsers';
import Modal from 'react-modal';
export default class JobScreen extends React.Component {
static contextTypes = {
executeAction: React.PropTypes.func.isRequired,
getStore: React.PropTypes.func.isRequired
};
componentWillMount() {
this.displayName = 'JobScreen'
this.state = {
traderModalOpened: false,
OFTModalOpened: false,
users: this.context.getStore(UserStore).getUsers(),
}
this.context.getStore(UserStore).on('change', () => {
this.setState({
users: this.context.getStore(UserStore).getUsers()
});
});
this.context.executeAction(LoadJobsScreen, this);
}
toggleTraderModal() {
this.setState({
traderModalOpened: !this.state.traderModalOpened
});
console.log(this.state.traderModalOpened);
}
toggleOFTModal() {
this.setState({
OFTModalOpened: !this.state.OFTModalOpened
});
console.log(this.state.OFTModalOpened);
}
render() {
var users = [];
this.state.users.forEach((user) => {
users.push(
<option>{user.id}</option>
);
});
return ( ...
);
}
}
有关店铺:
import { EventEmitter } from 'events';
class UserStore extends EventEmitter {
constructor() {
super();
this.users = new Map();
}
handleJobsData(payload) {
payload.data.jobs.forEach((user) => {
this.users.set(user.id, user);
});
this.emit('change');
}
getUsers() {
return this.users;
}
}
UserStore.dispatchToken = null;
UserStore.handlers = {
'RECEIVED_USERS_DATA': 'handleUsersData'
};
UserStore.storeName = 'UserStore';
export default UserStore;
我做错了什么?
我没有在app.js中注册我的商店,现在一切正常。
相关文章:
- 将作用域存储在JSON中
- 使用javascript存储变量的最安全方式
- 当图像转换为本地存储的DataURL时,EXIF被删除
- 如何在chrome扩展中存储数据/结果,以及如何使用setTimeout使其只被调用一次
- 如何有效地将游戏数据存储在URL查询字符串中
- Ember.js-接口状态应该存储在哪里
- 如何解雇“;铁局部存储负载”;事件
- 本地存储中的字符串到字节数组转换
- 从jQuery调用存储在Variable中的函数
- 推荐在JavaScript中执行存储为字符串的函数,而不是使用eval
- 通过另一个php应用程序将我的项目推送到Github存储库中
- 将数据存储在javascript数组中以供进一步使用
- 点击facebook像素跟踪注册(JS/JQUERY代码)
- ReactJS 存储未注册
- Firebase 已注册用户 - 将用户存储在节点中,而不是存储在注册用户中
- 将谷歌注册id存储到我的数据库中
- 将Bower包从私有Git存储库注册到私有Bower主机
- 使用本地存储创建注册和登录页面
- 如何使用node.js将注册数据存储到redis
- 注册表格不工作和存储数据在数据库(PHP/MYSQL)