React Native + Mobx,@ inject装饰器抛出错误

时间:2019-06-07 06:27:25

标签: reactjs react-native mobx mobx-react

我正在尝试将mobx与本机反应一起使用,并陷入问题。

@inject('someStore')
@observer
export class SomeComponent extends Component {
   render() {
       ...
   }
}

我确定我已经为装饰器正确配置了babel插件,但是@inject装饰器给了我一个"Expected a constructor."异常。

enter image description here

我不知道为什么会这样,因为我在另一个项目中以这种方式使用了mobx。有人遇到过这个问题吗?

3 个答案:

答案 0 :(得分:1)

我将mobx-react版本降级为5.4.4,并且可以确认它是否有效。

尝试降级mobx反应。

yarn add mobx-react@5.4.4

答案 1 :(得分:1)

重写下面的课程对我有用

“ mobx”:“ ^ 5.13.0”,“ mobx-react”:“ ^ 6.1.3”

class LoginScreen extends React.Component {

}

export default inject("userStore")(observer(LoginScreen));

答案 2 :(得分:1)

“ mobx反应”:“ ^ 6.1.3” 对我有用

import React, { Component } from 'react';
import {observer, inject} from 'mobx-react';

class SomeComponent extends Component {
class_content
}

export default inject('someStore', 'someStore' /* here you can add as many store files as you need */)(observer(SomeComponent));

但是请不要忘记将 Provider 添加到您的App.js或主文件中