【问题标题】:How to use decorators inside namespace: MobX如何在命名空间中使用装饰器:MobX
【发布时间】:2017-05-24 15:52:11
【问题描述】:

我在客户端代码中使用 MobX,如下所示:

<script src="/js/mobx.umd.js"></script>
<script src="/js/mobx-react/index.min.js"></script>

现在当我想像下面这样实际使用 MobX 时,它不起作用,即我的客户端用户界面对可观察变量的变化没有反应:

const action=window.mobx.action
const observable=window.mobx.observable

class Store {

    @observable isLoggedIn=false;
    @action setIsLoggedIn=(tf)=>{this.isLoggedIn=tf}
}

我想知道如何在 ES6 中实际使用 window.mobx.actionwindow.mobx.observable


之前我使用 MobX 和 NPM 如下所示,它工作正常:

import { action, observable } from 'mobx'

【问题讨论】:

    标签: javascript mobx


    【解决方案1】:

    装饰器只能通过 babel / typescript 的转译来支持。 ES5 语法见https://mobx.js.org/best/decorators.html

    【讨论】:

      【解决方案2】:
      class Store {
         isLoggedIn = observable(false);
         setIsLoggedIn= action((tf)=>{this.isLoggedIn=tf});
      }
      

      【讨论】:

        猜你喜欢
        • 2017-01-28
        • 2019-03-16
        • 2010-10-12
        • 1970-01-01
        • 1970-01-01
        • 2014-12-13
        • 2012-04-13
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多