fix: add app-barowser for browser
This commit is contained in:
parent
324c4e9862
commit
d2ebb5f488
@ -60,7 +60,7 @@ export default [
|
|||||||
plugins: [dts()],
|
plugins: [dts()],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
input: 'src/browser.ts',
|
input: 'src/app-browser.ts',
|
||||||
output: {
|
output: {
|
||||||
file: 'dist/router-browser.js',
|
file: 'dist/router-browser.js',
|
||||||
format: 'es',
|
format: 'es',
|
||||||
@ -74,7 +74,7 @@ export default [
|
|||||||
],
|
],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
input: 'src/browser.ts',
|
input: 'src/app-browser.ts',
|
||||||
output: {
|
output: {
|
||||||
file: 'dist/router-browser.d.ts',
|
file: 'dist/router-browser.d.ts',
|
||||||
format: 'es',
|
format: 'es',
|
||||||
|
5
src/app-browser.ts
Normal file
5
src/app-browser.ts
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
import { QueryRouterServer } from './browser.ts';
|
||||||
|
|
||||||
|
export const App = QueryRouterServer;
|
||||||
|
|
||||||
|
export * from './browser.ts';
|
11
src/route.ts
11
src/route.ts
@ -54,7 +54,7 @@ export type RouteContext<T = { code?: number }, S = any> = {
|
|||||||
queryRoute?: (message: { path: string; key?: string; payload?: any }, ctx?: RouteContext & { [key: string]: any }) => Promise<any>;
|
queryRoute?: (message: { path: string; key?: string; payload?: any }, ctx?: RouteContext & { [key: string]: any }) => Promise<any>;
|
||||||
index?: number;
|
index?: number;
|
||||||
throw?: (code?: number | string, message?: string, tips?: string) => void;
|
throw?: (code?: number | string, message?: string, tips?: string) => void;
|
||||||
/** 是否需要序列化 */
|
/** 是否需要序列化, 使用JSON.stringify和JSON.parse */
|
||||||
needSerialize?: boolean;
|
needSerialize?: boolean;
|
||||||
} & T;
|
} & T;
|
||||||
export type SimpleObject = Record<string, any>;
|
export type SimpleObject = Record<string, any>;
|
||||||
@ -603,7 +603,12 @@ export class QueryRouter {
|
|||||||
message: res.message,
|
message: res.message,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
async setContext(ctx: RouteContext) {
|
/**
|
||||||
|
* 设置上下文
|
||||||
|
* @description 这里的上下文是为了在handle函数中使用
|
||||||
|
* @param ctx
|
||||||
|
*/
|
||||||
|
setContext(ctx: RouteContext) {
|
||||||
this.context = ctx;
|
this.context = ctx;
|
||||||
}
|
}
|
||||||
getList(): RouteInfo[] {
|
getList(): RouteInfo[] {
|
||||||
@ -647,7 +652,7 @@ export class QueryRouter {
|
|||||||
throw(...args: any[]) {
|
throw(...args: any[]) {
|
||||||
throw new CustomError(...args);
|
throw new CustomError(...args);
|
||||||
}
|
}
|
||||||
hasRoute(path: string, key?: string) {
|
hasRoute(path: string, key: string = '') {
|
||||||
return this.routes.find((r) => r.path === path && r.key === key);
|
return this.routes.find((r) => r.path === path && r.key === key);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
15
src/utils/is-engine.ts
Normal file
15
src/utils/is-engine.ts
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
export const isNode = typeof process !== 'undefined' && process.versions != null && process.versions.node != null;
|
||||||
|
export const isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && typeof document.createElement === 'function';
|
||||||
|
// @ts-ignore
|
||||||
|
export const isDeno = typeof Deno !== 'undefined' && typeof Deno.version === 'object' && typeof Deno.version.deno === 'string';
|
||||||
|
|
||||||
|
export const getEngine = () => {
|
||||||
|
if (isNode) {
|
||||||
|
return 'node';
|
||||||
|
} else if (isBrowser) {
|
||||||
|
return 'browser';
|
||||||
|
} else if (isDeno) {
|
||||||
|
return 'deno';
|
||||||
|
}
|
||||||
|
return 'unknown';
|
||||||
|
};
|
Loading…
x
Reference in New Issue
Block a user