想在一个函数组件内访问全局global状态以及当前业务模块状态,但是貌似API不支持访问,computed也是如此,访问出来都是undefined
发布于 2020-11-21 13:08
共1个回答
AD
游客AdtNgf
支持的,所有组件能能够访问全局模块的状态和计算,一个组件只能属于一个模块,模块但是能连接多个模块
function Demo(){
const {
moduleState, moduleComputed, connectedState, connectedComputed, globalState, globalComputed
} = useConcent({module: 'counter', connect:['modA', 'modB']});
// moduleState, moduleComputed 是 所属模块的状态和计算结果
// globalState,globalComputed 是 全局模块的状态和计算结果
// connectedState.modA.{keyName} 访问连接模块modA的状态
// connectedComputed.modA.{keyName} 访问连接模块modA的计算结果
}
更多细节可参考api文档 https://concentjs.github.io/concent-doc/api-much-used/useConcent
或在线示例 https://codesandbox.io/s/concent-guide-xvcej
如果某个组件仅访问数据,不想订阅变化被触发重渲染,可以使用全局api
import { getState, getComputed } from 'concent';
function Test(){
const rootState = getState();
const rootCu = getComputed();
// ...
}
回答问题