vtils
Version:
一个面向业务的 JavaScript/TypeScript 实用程序库。
22 lines (21 loc) • 575 B
JavaScript
exports.__esModule = true;
exports.useStateWithDeps = useStateWithDeps;
var _react = require("react");
var _reactUse = require("react-use");
/**
* 给 useState 插上依赖的翅膀。依赖变化时会更新状态。
*
* @param state 状态
* @param deps 依赖
* @returns 返回结果同 useState
*/
function useStateWithDeps(state, deps) {
var _useState = (0, _react.useState)(state),
value = _useState[0],
setValue = _useState[1];
(0, _reactUse.useUpdateEffect)(function () {
setValue(state);
}, deps);
return [value, setValue];
}
;