扫码一下
查看教程更方便
react 18 提供了一个新的钩子 usetransition()
用于转换到新状态,同时在新状态准备好之前控制要渲染的内容。 recoil 应该与这种方法兼容,并提供与 react 状态一致的视图。 但是,react 18 可能会从并发更新中回退,并且尚未正式支持基于外部存储的状态更改来启动转换。 这是 react 团队正在寻求支持的东西,但在此之前,我们已经通过以下钩子添加了对此的实验性支持。 此 api 被认为是实验性的,因为可能存在我们尚未找到未处理的用例。
这是一个在加载新结果时显示查询当前结果的示例:
function queryresults() {
const queryparams = userecoilvalue_transition_support_unstable(queryparamsatom);
const results = userecoilvalue_transition_support_unstable(myqueryselector(queryparams));
return results;
}
function myapp() {
const [queryparams, setqueryparams] = userecoilstate_transition_support_unstable(queryparamsatom);
const [intransition, starttransition] = usetransition();
return (
{intransition ? [loading new results...] : null}
results:
);
}