parsec-hooks 1.0.6 → 1.0.10
Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
|
|
1
|
+
import { Dispatch, SetStateAction } from 'react';
|
2
|
+
declare const _default: <D extends unknown>(name: string, initState?: D) => [D, Dispatch<SetStateAction<D>>];
|
3
|
+
/**
|
4
|
+
* 在每个需要的地方使用传入,得到一个全局的状态,如:
|
5
|
+
* const globalLoading = useGlobalState('globalLoading')
|
6
|
+
*/
|
7
|
+
export default _default;
|
@@ -0,0 +1,47 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4
|
+
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
6
|
+
value: true
|
7
|
+
});
|
8
|
+
exports.default = void 0;
|
9
|
+
|
10
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
11
|
+
|
12
|
+
var _react = require("react");
|
13
|
+
|
14
|
+
var globalObj = {};
|
15
|
+
/**
|
16
|
+
* 在每个需要的地方使用传入,得到一个全局的状态,如:
|
17
|
+
* const globalLoading = useGlobalState('globalLoading')
|
18
|
+
*/
|
19
|
+
|
20
|
+
var _default = function _default(name, initState) {
|
21
|
+
var _globalObj$name;
|
22
|
+
|
23
|
+
var _useState = (0, _react.useState)(((_globalObj$name = globalObj[name]) === null || _globalObj$name === void 0 ? void 0 : _globalObj$name.state) || initState),
|
24
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
25
|
+
globalState = _useState2[0],
|
26
|
+
setGlobalState = _useState2[1];
|
27
|
+
|
28
|
+
if (!globalObj[name]) {
|
29
|
+
globalObj[name] = {
|
30
|
+
state: globalState,
|
31
|
+
sets: []
|
32
|
+
};
|
33
|
+
}
|
34
|
+
|
35
|
+
(0, _react.useLayoutEffect)(function () {
|
36
|
+
globalObj[name].sets.push(setGlobalState);
|
37
|
+
}, [name]);
|
38
|
+
(0, _react.useLayoutEffect)(function () {
|
39
|
+
globalObj[name].sets.forEach(function (fn) {
|
40
|
+
return fn(globalState);
|
41
|
+
});
|
42
|
+
globalObj[name].state = globalState;
|
43
|
+
}, [globalState, name]);
|
44
|
+
return [globalState, setGlobalState];
|
45
|
+
};
|
46
|
+
|
47
|
+
exports.default = _default;
|
package/lib/index.d.ts
CHANGED
@@ -135,4 +135,8 @@ export { default as useElementLoad } from './elementLoadHooks';
|
|
135
135
|
* 生成id
|
136
136
|
*/
|
137
137
|
export { default as useId } from './idHooks';
|
138
|
+
/**
|
139
|
+
* 设置获取全局状态
|
140
|
+
*/
|
141
|
+
export { default as useGlobalState } from './globalStateHooks';
|
138
142
|
export * from './utils';
|
package/lib/index.js
CHANGED
@@ -42,7 +42,8 @@ var _exportNames = {
|
|
42
42
|
createContainer: true,
|
43
43
|
useDebounceEffect: true,
|
44
44
|
useElementLoad: true,
|
45
|
-
useId: true
|
45
|
+
useId: true,
|
46
|
+
useGlobalState: true
|
46
47
|
};
|
47
48
|
Object.defineProperty(exports, "useCountList", {
|
48
49
|
enumerable: true,
|
@@ -254,6 +255,12 @@ Object.defineProperty(exports, "useId", {
|
|
254
255
|
return _idHooks.default;
|
255
256
|
}
|
256
257
|
});
|
258
|
+
Object.defineProperty(exports, "useGlobalState", {
|
259
|
+
enumerable: true,
|
260
|
+
get: function get() {
|
261
|
+
return _globalStateHooks.default;
|
262
|
+
}
|
263
|
+
});
|
257
264
|
|
258
265
|
var _countListHooks = _interopRequireDefault(require("./countListHooks"));
|
259
266
|
|
@@ -323,6 +330,8 @@ var _elementLoadHooks = _interopRequireDefault(require("./elementLoadHooks"));
|
|
323
330
|
|
324
331
|
var _idHooks = _interopRequireDefault(require("./idHooks"));
|
325
332
|
|
333
|
+
var _globalStateHooks = _interopRequireDefault(require("./globalStateHooks"));
|
334
|
+
|
326
335
|
var _utils = require("./utils");
|
327
336
|
|
328
337
|
Object.keys(_utils).forEach(function (key) {
|
@@ -5,14 +5,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
});
|
6
6
|
exports.default = void 0;
|
7
7
|
|
8
|
-
var _wechat = require("remax-rn/src/wechat");
|
9
|
-
|
10
8
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
11
9
|
// @ts-ignore
|
12
|
-
|
13
|
-
|
14
|
-
title: pageName
|
15
|
-
});
|
10
|
+
// import { setNavigationBarTitle } from 'remax-rn/src/wechat';
|
11
|
+
var _default = function _default(pageName) {// setNavigationBarTitle({ title: pageName });
|
16
12
|
};
|
17
13
|
|
18
14
|
exports.default = _default;
|