为了账号安全,请及时绑定邮箱和手机立即绑定

通过mobx-react的Provider注入store,store里面对应的对象都是空对象,这个问题该怎么来解决?

下面这张图是我借助google开发工具查看得到,里面都是都是Empty Object,导致我调用方法失败,老师有时间帮忙看一下,我是哪个环节出问题了? 谢谢

https://img1.sycdn.imooc.com//5b4bf4410001810e24380580.jpg

正在回答

2 回答

参考我的github todolist 项目https://github.com/HSBC-ICE/Mobx

https://img1.sycdn.imooc.com//5b5334120001874e07230521.jpg

https://img1.sycdn.imooc.com//5b5334120001579910450673.jpg


0 回复 有任何疑惑可以回复我~

import todoStore from './TodoStore'

import  XXXX . from xxxx;

export {

todoStore,

xxxxx

}

通过上边的方式导出多个store


import * as stores from './stores';

import App from './views/App/index.jsx';

ReactDOM.render(

<Provider {...stores}>

<App/>

</Provider>,

document.querySelector('#root')

);

然后将所有的store一起注入 App组件。

@inject('todoStore')

@inject('xxxStore')

@observer

class App extends React.Component{

    constructor(props){

        super(props);

        this.state = {};

        this.store = this.props.todoStore;

    }

    render(){

        return  <div className = 'todo-list'>

        <TodoHeader store = {this.store} />

        <div className = 'todo-list-view'>

        <ul>

        <TodoView todos = {this.store.todos}/>

        </ul>

        </div>

        <TodoFooter store = {this.store}/>

        </div>

    }

}

这样就可以将App作为入口,获取所有的store,在App的任何子组件中也可以任意获取。

0 回复 有任何疑惑可以回复我~
#1

yuanbingbing

追加 : 你注入的store是通过props属性拿到的,不是在state里边。
2018-07-21 回复 有任何疑惑可以回复我~
#2

别秋景

大佬 Provider 这个组件有啥用呀
2018-08-26 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

通过mobx-react的Provider注入store,store里面对应的对象都是空对象,这个问题该怎么来解决?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信