Skip to content

Commit 9a8d6a0

Browse files
committed
fix: resolve windows path
1 parent b4fdc68 commit 9a8d6a0

File tree

7 files changed

+182
-16
lines changed

7 files changed

+182
-16
lines changed

packages/core/package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
"access": "public"
3030
},
3131
"dependencies": {
32+
"@umijs/utils": "^3.5.20",
3233
"lodash": "^4.17.21",
3334
"mkdirp": "^1.0.4"
3435
},

packages/core/src/Route/index.ts

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import { resolve } from 'path';
2+
import { winPath } from '@umijs/utils';
23
import _cloneDeep from 'lodash/cloneDeep';
34
import _uniq from 'lodash/uniq';
45

@@ -43,13 +44,13 @@ export default class Route {
4344
let wrapperCursor = 0;
4445
const resolveRoute = (route: IRoute) => {
4546
if (route.component && !result[route.component]) {
46-
route.component = resolve(this.service.paths.absSrcPath!, route.component);
47+
route.component = winPath(resolve(this.service.paths.absSrcPath!, route.component));
4748
result[route.component] = `Component${componentCursor}`;
4849
componentCursor += 1;
4950
}
5051
if (route.wrappers) {
5152
route.wrappers.forEach((item) => {
52-
let wrapper = resolve(this.service.paths.absSrcPath!, item);
53+
let wrapper = winPath(resolve(this.service.paths.absSrcPath!, item));
5354
if (!result[wrapper]) {
5455
result[wrapper] = `Wrapper${wrapperCursor}`;
5556
wrapperCursor += 1;
@@ -88,7 +89,7 @@ export default class Route {
8889

8990
const replaceComponent = (route: IRoute) => {
9091
if (route.component) {
91-
route.component = resolve(this.service.paths.absSrcPath!, route.component);
92+
route.component = winPath(resolve(this.service.paths.absSrcPath!, route.component));
9293
if (this.dynamicImport) {
9394
let loading = '';
9495
if (this.dynamicImport.loading) {
@@ -104,7 +105,7 @@ export default class Route {
104105
const replaceWrappers = (route: IRoute) => {
105106
if (route.wrappers) {
106107
route.wrappers = route.wrappers.map((item) => {
107-
let wrapper = resolve(this.service.paths.absSrcPath!, item);
108+
let wrapper = winPath(resolve(this.service.paths.absSrcPath!, item));
108109
if (this.dynamicImport) {
109110
let loading = '';
110111
if (this.dynamicImport.loading) {

packages/core/src/Service/index.ts

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import { EOL } from 'os';
22
import { existsSync, readFileSync, writeFileSync } from 'fs';
33
import { resolve, join, dirname, relative } from 'path';
44
import mkdirp from 'mkdirp';
5+
import { winPath } from '@umijs/utils';
56

67
import Route, { RouteOptions } from '../Route';
78
import { isTSFile, getGlobalFiles } from './utils';
@@ -34,10 +35,10 @@ export default class Service {
3435
}
3536

3637
initPaths(options: ServiceOptions) {
37-
const absSrcPath = resolve(options.cwd, './src');
38-
const absPagesPath = resolve(options.cwd, './src/pages');
39-
const absOutputPath = resolve(options.outDir);
40-
const absTmpPath = resolve(options.cwd, './src/.vit');
38+
const absSrcPath = winPath(resolve(options.cwd, './src'));
39+
const absPagesPath = winPath(resolve(options.cwd, './src/pages'));
40+
const absOutputPath = winPath(resolve(options.outDir));
41+
const absTmpPath = winPath(resolve(options.cwd, './src/.vit'));
4142

4243
this.paths = {
4344
cwd: options.cwd,

packages/vit/package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
},
3333
"dependencies": {
3434
"@ant-design/icons": "^4.6.2",
35+
"@umijs/utils": "^3.5.20",
3536
"@vitjs/core": "^0.6.0",
3637
"chokidar": "^3.5.1",
3738
"globby": "^11.0.3",

packages/vit/src/generateFiles/routes.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import { readFileSync } from 'fs';
22
import { resolve } from 'path';
33
import Mustache from 'mustache';
4+
import { winPath } from '@umijs/utils';
45
import { Service } from '@vitjs/core';
56

67
import { resolveIcons } from './utils';
@@ -49,7 +50,7 @@ export default function generateRoutes(service: Service) {
4950
loadingComponent:
5051
service.route.dynamicImport &&
5152
service.route.dynamicImport.loading &&
52-
resolve(process.cwd(), './src/', service.route.dynamicImport.loading),
53+
winPath(resolve(process.cwd(), './src/', service.route.dynamicImport.loading)),
5354
}),
5455
});
5556
}

packages/vit/src/vitApp.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import { resolve } from 'path';
22
import type { Plugin, ResolvedConfig } from 'vite';
33
import { Service } from '@vitjs/core';
44
import chokidar, { FSWatcher } from 'chokidar';
5+
import { winPath } from '@umijs/utils';
56

67
import { exportStatic } from './preset';
78
import { generateHistory, generateRoutes, generateVit, generateExports } from './generateFiles';
@@ -23,11 +24,11 @@ export default function pluginFactory(config: PluginConfig): Plugin {
2324
alias: [
2425
{
2526
find: /@@\/exports$/,
26-
replacement: resolve(process.cwd(), './src/.vit/exports'),
27+
replacement: winPath(resolve(process.cwd(), './src/.vit/exports')),
2728
},
2829
{
2930
find: /@vit-app$/,
30-
replacement: resolve(process.cwd(), './src/.vit/vit'),
31+
replacement: winPath(resolve(process.cwd(), './src/.vit/vit')),
3132
},
3233
],
3334
},
@@ -68,7 +69,7 @@ export default function pluginFactory(config: PluginConfig): Plugin {
6869
// ref:
6970
// https://github.com/paulmillr/chokidar/issues/639
7071
[...autoImportsAheadFiles, ...autoImportFiles]
71-
.map((item) => resolve(service.paths.absSrcPath!, item))
72+
.map((item) => winPath(resolve(service.paths.absSrcPath!, item)))
7273
.forEach((item) => {
7374
const watcher = chokidar.watch(item);
7475
watcher

0 commit comments

Comments
 (0)