Mobx模型内部的Meteor.userId()

Mobx模型内部的Meteor.userId(),meteor,mobx,mobx-react,Meteor,Mobx,Mobx React,我想在使用Mobx进行状态管理的viewmodel中使用Meteor.userId() i、 e 问题是,我在尝试执行此操作时收到此错误 “运行模板时出错: `Error: Meteor.userId can only be invoked in method calls or publications."` 我认为createContainer在这里不适用,因为它是为React组件设计的,而这只是一个标准的ES6JS类 我可能可以在我的主要应用程序组件上使用createContainer,只

我想在使用Mobx进行状态管理的viewmodel中使用Meteor.userId()

i、 e

问题是,我在尝试执行此操作时收到此错误 “运行模板时出错:

`Error: Meteor.userId can only be invoked in method calls or publications."`
我认为createContainer在这里不适用,因为它是为React组件设计的,而这只是一个标准的ES6JS类

我可能可以在我的主要应用程序组件上使用createContainer,只需在应用程序模型或类似的东西中设置loggedIn可观察的值,但这感觉有点不对劲

任何想法或解决方案都将不胜感激


谢谢!

尝试将整个Meteo类封装在一个持久的可观察数组中:

import {observable, toJS} from 'mobx';
import {persist} from 'mobx-persist';

@persist @observable _meteo = Meteo
然后,您可以在组件需要时调用状态:

const {_meteo } = props.store

_meteo.userId()

…否则请查看toJS()数据!

也许您可以使用
Meteor.bindEnvironment
将其封装在函数中?
const {_meteo } = props.store

_meteo.userId()