问题标签 [mobx-react]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 如何在 MobX 中将装饰器 @action 转换为非装饰器操作
我正在从我的 React Native 应用程序中删除装饰器(babel 问题太多)并且我的操作不起作用(包含的函数不运行)。
我正在翻译集体诉讼,例如
至
将类@action 转换为非装饰器形式的正确方法是什么?
javascript - 数组推送在反应应用程序中无法按预期工作
在我的 React 应用程序中,我使用 MobX 进行状态管理。处理 ajax 响应后,我尝试push
存储。但事实证明它只是没有按预期工作。这里的代码:
reactjs - 检测可观察道具中的更新
我有一个具有可观察属性的组件:
我的问题是,componentWillReceiveProps
当观察到的变量发生变化时(通过单击按钮),它永远不会被调用,componentDidReceiveProps
也不会被调用shouldComponentUpdate
。但是我可以在呈现的代码中看到颜色确实在商店中发生了变化。
reactjs - 我可以将 NativeBase 与 Mobx 一起使用吗?
我和我的团队正在为我们的下一个项目分析 NativeBase 框架http://nativebase.io/,我们唯一担心的是他们将 Redux 用于他们的示例应用程序,我们通常选择 Mobx 进行状态管理。所以我的问题是,是否可以(并且安全)将 Mobx 与 NativeBase 应用程序一起使用?
reactjs - 从另一个组件获取观察到的变量并在更改时重绘
在我的项目中,我有两个节点(svg 框)和它们之间的连接(箭头)。
Node 是一个组件,它通过传递x
和y
坐标作为 props 来初始化:
现在我有一个Connection
组件,它应该有两个参数:一个Node
连接自和一个Node
连接到:
Node
被定义为@observer
并且有两个可观察的属性
您可以拖放Node
,left
并且top
值将相应更改。
Connection
组件也被定义为@observer
并传入我们需要连接的节点的道具绑定到可观察变量:
Nodes
然后Components
在 parent 的render()
方法中呈现,如下所示:
现在我的问题是我无法弄清楚如何修改我的Connection
组件,因此每当传递给它的节点之一“更改”(意味着它left
或被top
更改)时它都会收到通知,以便我可以在节点之间重新绘制一条线?
基本上我有两个问题:
- 能够从内部组件中获取
left
和top
变量(确定从 x;y 到什么 x;y 我应该画一条线的坐标);Node
Connection
Connection
仅在移动时重绘 a ,Node
仅连接正在移动的节点。
reactjs - 警告:flattenChildren(...):在 React Mobx 组件中遇到两个具有相同键的孩子
我的 MobX React 组件中出现此错误:
如果我第一次加载此路线,则不会显示此错误消息。
这是我的整个组件:
这是我的 mobx 商店:
我想在组件安装后获取新的数据副本。可能这就是我收到此错误的原因。有没有更好的方法?
javascript - 无法访问同一类中的变量
我有一个类似以下Store
课程的 MobX 商店。当我想访问this.user.permits.db
时,我收到一个this.user
未定义的错误。我想知道为什么我无法访问@observable user
.
src/ui/store/store.js
文件:
src/ui/ui.js
从以下位置导入存储的文件store.js
:
src/views/profile.ejs
文件,传递user
给 JavaScript:
permits
CouchDB 用户数据库上的示例用户文档中的字段定义如下:
更新:
这也应该得到纠正。
javascript - 在 ObservableArray.map(..) 中绑定事件处理程序时 MobX 抛出错误
我在 React 组件中映射了一个 ObservableArray,它工作得非常好,但是每当我在它下面添加 OnClick 事件处理程序时,它就会中断,抛出几个错误。将处理程序添加到映射循环之外的组件可以按预期工作。有什么建议么?
反应组件
MobX 商店
错误
javascript - 过滤 Observable 数组
我正在跟进这个问题:mobX - Filter countries in react native?
在我自己的应用程序中,我将我的 mobx 可观察对象附加到 firebase 商店。
我已经设法开始工作,可以列出并删除从商店获得的值,这是在尝试过滤时遇到问题。这是代码:
你看如果我过滤我在我的 filters() 函数中创建的模拟 sampleArray,它会起作用(假数据除外)。
如果我尝试过滤 json 对象,我会收到一条错误消息,指出过滤器不是函数。
过滤我的商店结果以将其转换为 js 数组的最佳方法是什么?如果是这样的话,你会怎么做呢?
这是商店代码:
我应该说,虽然我在这件事上是一个真正的自以为是的菜鸟,但在问这个问题之前,我已经尝试了很长时间。
感谢任何帮助,谢谢!
reactjs - 如何使用 mobx 可观察状态测试反应组件
这是我的组件的简化版本:
这是我的测试(使用玩笑和酶):
问题是when
in test 的处理程序在渲染方法之前运行,所以我无权访问那里的渲染标记。我的问题是如何except
在呈现完成状态后运行我的代码。我也不想破解我的组件。我在这里使用wrapper.instance().warehouse
的是我不太喜欢的。
通常,问题是如何测试具有可观察状态的组件?