为什么 mobx inject 需要使用 react 的上下文?

Why mobx inject needs to use react's context?

实现不依赖于 mobx-reactProvider 组件(将其属性存储在 React 上下文中)的 @inject 装饰器有哪些潜在问题?

inject 的用法是这样的:

// MyComponent.js

import { authManager } from './services';

const MyComponent = ({ authManager }) => ...;

export default inject({ authManager })(MyComponent);

它只是将其参数与组件道具合并。

您可以将函数作为第一个参数传递给注入函数。 https://github.com/mobxjs/mobx-react#customizing-inject

import { authManager } from './services';
inject(_stores => ({ authManager }))(YouComponent);

它不会依赖上下文,它只会将返回的对象映射到您的道具。

我没测试过