refactor: 合并buildReg 函数

pull/49/head
moonrailgun 3 years ago
parent 4e2ea330ca
commit 8fd124265c

@ -71,9 +71,7 @@ export { useUpdateRef } from './hooks/useUpdateRef';
export { useWhyDidYouUpdate } from './hooks/useWhyDidYouUpdate';
// manager
export { buildRegFn } from './manager/buildRegFn';
export { buildRegList } from './manager/buildRegList';
export { buildRegMap } from './manager/buildRegMap';
export { buildRegFn, buildRegList, buildRegMap } from './manager/buildReg';
export { getServiceUrl, setServiceUrl } from './manager/service';
export {
setTokenGetter,
@ -219,6 +217,7 @@ export {
isDevelopment,
version,
} from './utils/environment';
export type { PermissionItemType } from './utils/role-helper';
export { isValidStr } from './utils/string-helper';
export { isValidJson } from './utils/json-helper';
export { MessageHelper } from './utils/message-helper';

@ -132,3 +132,38 @@ export function buildCachedRegFnAsync<F extends (...args: any) => any>(
return [cachedGet, cachedSet, refreshCache];
}
/**
*
*
*/
export function buildRegList<T>(): [T[], (item: T) => void] {
const list: T[] = [];
const reg = (item: T) => {
list.push(item);
};
return [list, reg];
}
/**
* Mapping
*
*/
export function buildRegMap<T>(): [
Record<string, T>,
(name: string, item: T) => void
] {
const mapping: Record<string, T> = {};
const reg = (name: string, item: T) => {
if (mapping[name]) {
console.warn('[buildRegMap] 重复注册:', name);
}
mapping[name] = item;
};
return [mapping, reg];
}

@ -1,13 +0,0 @@
/**
*
*
*/
export function buildRegList<T>(): [T[], (item: T) => void] {
const list: T[] = [];
const reg = (item: T) => {
list.push(item);
};
return [list, reg];
}

@ -1,20 +0,0 @@
/**
* Mapping
*
*/
export function buildRegMap<T>(): [
Record<string, T>,
(name: string, item: T) => void
] {
const mapping: Record<string, T> = {};
const reg = (name: string, item: T) => {
if (mapping[name]) {
console.warn('[buildRegMap] 重复注册:', name);
}
mapping[name] = item;
};
return [mapping, reg];
}

@ -1,4 +1,4 @@
import { buildRegFn, buildCachedRegFnAsync } from './buildRegFn';
import { buildRegFn, buildCachedRegFnAsync } from './buildReg';
export const [getErrorHook, setErrorHook] = buildRegFn<(err: any) => boolean>(
'requestErrorHook',

@ -1,4 +1,4 @@
import { buildRegFnWithEvent } from './buildRegFn';
import { buildRegFnWithEvent } from './buildReg';
/**
*

@ -1,4 +1,4 @@
import { buildRegList } from './buildRegList';
import { buildRegList } from './buildReg';
interface PluginSocketEventListener {
eventName: string;

@ -1,4 +1,4 @@
import { buildRegFn } from './buildRegFn';
import { buildRegFn } from './buildReg';
import { useCallback, useLayoutEffect, useState } from 'react';
export interface StorageObject {

@ -1,5 +1,5 @@
import { t } from '../i18n';
import { buildRegFn } from './buildRegFn';
import { buildRegFn } from './buildReg';
/**
* UI api

Loading…
Cancel
Save