-
-
Notifications
You must be signed in to change notification settings - Fork 434
Open
Description
webpack config
{
test: /\.ts$/,
use: [
/* config.module.rule('ts').use('thread-loader') */
{
loader: '/Users/mouyong/company/leo-web-ai/node_modules/thread-loader/dist/cjs.js'
},
/* config.module.rule('ts').use('babel-loader') */
{
loader: '/Users/mouyong/company/leo-web-ai/node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js'
},
/* config.module.rule('ts').use('ts-loader') */
{
loader: '/Users/mouyong/company/leo-web-ai/node_modules/ts-loader/index.js',
options: {
transpileOnly: true,
appendTsSuffixTo: [
'\\.vue$'
],
happyPackMode: true
}
},
/* config.module.rule('ts').use('customPathReplacementLoader') */
{
loader: 'web-monorepo-custom-alias'
}
]
The code implementation of web-monorepo-custom-alias
is as follows
const path = require('path');
const fs = require('fs');
module.exports = function (source) {
const callback = this.async();
if (this.resourcePath.includes('src/utils/aiAnswer/AIAnswerScheduler')) {
console.log(this.resourcePath)
source = source.replaceAll('@/services/ai-answer', '../../services/ai-answer')
}
callback(null, source)
};
ts-loader still reports the problem that @/services/ai-answer cannot be found,Because typescript in ts-loader does type checking and does not use the replaced content
How to make typescript in ts-loader use the replaced content
Metadata
Metadata
Assignees
Labels
No labels