Skip to content

Commit fae0252

Browse files
committed
fix: fix webpack
1 parent 679d9db commit fae0252

File tree

1 file changed

+26
-22
lines changed

1 file changed

+26
-22
lines changed

packages/bundler-webpack/src/config/handleResolve.ts

Lines changed: 26 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -13,23 +13,29 @@ export const handleResolve = async ({
1313
config: Config
1414
isServer: boolean
1515
}): Promise<void> => {
16-
// aliases
17-
config.resolve.alias
18-
.set('@source', app.dir.source())
19-
.set('@temp', app.dir.temp())
20-
.set('@internal', app.dir.temp('internal'))
16+
const alias = {
17+
'@source': app.dir.source(),
18+
'@temp': app.dir.temp(),
19+
'@internal': app.dir.temp('internal'),
20+
}
2121

22-
// extensions
23-
config.merge({
24-
resolve: {
25-
extensionAlias: {
26-
'.js': ['.js', '.ts'],
27-
'.mjs': ['.mjs', '.mts'],
28-
},
29-
extensions: ['.js', '.jsx', '.ts', '.tsx', '.vue', '.json'],
30-
},
22+
// plugin hook: alias
23+
const aliasResult = await app.pluginApi.hooks.alias.process(app, isServer)
24+
25+
aliasResult.forEach((aliasObject) => {
26+
Object.assign(alias, aliasObject)
3127
})
3228

29+
// set aliases
30+
config.resolve.alias.batch((aliasConfig) =>
31+
Object.assign(
32+
aliasConfig,
33+
Object.fromEntries(
34+
Object.entries(alias).sort((a, b) => b.length - a.length),
35+
),
36+
),
37+
)
38+
3339
// extensions
3440
config.resolve.extensions.merge([
3541
'.js',
@@ -40,13 +46,11 @@ export const handleResolve = async ({
4046
'.json',
4147
])
4248

43-
// plugin hook: alias
44-
const aliasResult = await app.pluginApi.hooks.alias.process(app, isServer)
45-
46-
// set aliases
47-
aliasResult.forEach((aliasObject) => {
48-
Object.entries(aliasObject).forEach(([key, value]) => {
49-
config.resolve.alias.set(key, value)
50-
})
49+
// extensionAlias
50+
config.resolve.merge({
51+
extensionAlias: {
52+
'.js': ['.js', '.ts'],
53+
'.mjs': ['.mjs', '.mts'],
54+
},
5155
})
5256
}

0 commit comments

Comments
 (0)