mirror of
https://github.com/vbenjs/vue-vben-admin.git
synced 2025-08-27 14:49:43 +08:00
perf: perf component
This commit is contained in:
@@ -3,10 +3,9 @@ import { userStore } from '/@/store/modules/user';
|
||||
import { useI18n } from '/@/hooks/web/useI18n';
|
||||
const { createMessage } = useMessage();
|
||||
|
||||
const { t } = useI18n('sys.api');
|
||||
|
||||
const error = createMessage.error!;
|
||||
export function checkStatus(status: number, msg: string): void {
|
||||
const { t } = useI18n('sys.api');
|
||||
switch (status) {
|
||||
case 400:
|
||||
error(`${msg}`);
|
||||
|
@@ -22,7 +22,6 @@ import { errorStore } from '/@/store/modules/error';
|
||||
import { errorResult } from './const';
|
||||
import { useI18n } from '/@/hooks/web/useI18n';
|
||||
|
||||
const { t } = useI18n('sys.api');
|
||||
const globSetting = useGlobSetting();
|
||||
const prefix = globSetting.urlPrefix;
|
||||
const { createMessage, createErrorModal } = useMessage();
|
||||
@@ -35,6 +34,7 @@ const transform: AxiosTransform = {
|
||||
* @description: 处理请求数据
|
||||
*/
|
||||
transformRequestData: (res: AxiosResponse<Result>, options: RequestOptions) => {
|
||||
const { t } = useI18n('sys.api');
|
||||
const { isTransformRequestResult } = options;
|
||||
// 不进行任何处理,直接返回
|
||||
// 用于页面代码可能需要直接获取code,data,message这些信息时开启
|
||||
@@ -154,6 +154,7 @@ const transform: AxiosTransform = {
|
||||
* @description: 响应错误处理
|
||||
*/
|
||||
responseInterceptorsCatch: (error: any) => {
|
||||
const { t } = useI18n('sys.api');
|
||||
errorStore.setupErrorHandle(error);
|
||||
const { response, code, message } = error || {};
|
||||
const msg: string =
|
||||
|
40
src/utils/propTypes.ts
Normal file
40
src/utils/propTypes.ts
Normal file
@@ -0,0 +1,40 @@
|
||||
import { CSSProperties, VNodeChild } from 'vue';
|
||||
import { createTypes, VueTypeValidableDef, VueTypesInterface } from 'vue-types';
|
||||
|
||||
type VueNode = VNodeChild | JSX.Element;
|
||||
|
||||
type PropTypes = VueTypesInterface & {
|
||||
readonly style: VueTypeValidableDef<CSSProperties>;
|
||||
readonly VNodeChild: VueTypeValidableDef<VueNode>;
|
||||
// readonly trueBool: VueTypeValidableDef<boolean>;
|
||||
};
|
||||
|
||||
const propTypes = createTypes({
|
||||
func: undefined,
|
||||
bool: undefined,
|
||||
string: undefined,
|
||||
number: undefined,
|
||||
object: undefined,
|
||||
integer: undefined,
|
||||
}) as PropTypes;
|
||||
|
||||
propTypes.extend([
|
||||
{
|
||||
name: 'style',
|
||||
getter: true,
|
||||
type: [String, Object],
|
||||
default: undefined,
|
||||
},
|
||||
{
|
||||
name: 'VNodeChild',
|
||||
getter: true,
|
||||
type: undefined,
|
||||
},
|
||||
// {
|
||||
// name: 'trueBool',
|
||||
// getter: true,
|
||||
// type: Boolean,
|
||||
// default: true,
|
||||
// },
|
||||
]);
|
||||
export { propTypes };
|
Reference in New Issue
Block a user