教程 > recoil.js > 阅读:47

usesetrecoilstate(state)——迹忆客-ag捕鱼王app官网

usesetrecoilstate(state) 返回一个 setter 函数,用来更新可写 recoil state 的值。

function usesetrecoilstate(state: recoilstate): setterorupdater;
type setterorupdater = (t | (t => t)) => void;
  • state:可写的 recoil state (atom 或可写的 selector

返回一个可以用来异步改变 state 的 setter 函数。可以传给此 setter 函数一个新的值,也可以传入一个更新函数,此函数接受上一次的值作为其参数。

当一个组件需要写入而不需要读取 state 时,推荐使用此 hook。如果组件使用了 来获取 setter 函数,那么同时它也会订阅更新,并在 atom 或 selector 更新时重新渲染。使用 usesetrecoilstate() 允许组件在值发生改变时而不用

给组件订阅重新渲染的情况下设置值。

示例

import {atom, usesetrecoilstate} from 'recoil';
const namesstate = atom({
  key: 'namesstate',
  default: ['ella', 'chris', 'paul'],
});
function formcontent({setnamesstate}) {
  const [name, setname] = usestate('');
  
  return (
    <>
       setname(e.target.value)} />
      
    
)}
// this component will be rendered once when mounting
function form() {
  const setnamesstate = usesetrecoilstate(namesstate);
  
  return ;
}

查看笔记

扫码一下
查看教程更方便
网站地图