Как изменить порядок вызова chainWebpack() с помощью vue js?
Я пытаюсь обновить этот плагин: https://github.com/vatson/vue-cli-plugin-ts-bundler Я сделал большую часть работы, но когда я применил его к @hl037 и попытался выполнить сборку , я сталкиваюсь с проблемами, потому что вызовы api.chainWebpack выполняются в другом порядке, а затем параметр не существует. Это соответствующая часть кода:
module.exports = (api, options) => {
api.chainWebpack(config => {
const tsRule = config.module.rule('ts').test(/\.ts$/);
const tsxRule = config.module.rule('tsx').test(/\.tsx$/);
// HERE in the original one, these rules exist, but when the plugin is renamed (with the scope), they don't
tsRule.uses.delete('cache-loader');
tsxRule.uses.delete('cache-loader');
tsRule.uses.delete('thread-loader');
tsxRule.uses.delete('thread-loader');
tsRule
.use('ts-loader')
.loader('ts-loader')
.tap(opts => {
// HERE, opts is "undefined" when renamed
opts.compilerOptions = { declaration: true };
opts.transpileOnly = false;
opts.happyPackMode = false;
return opts;
});
});
}
Есть ли способ потребовать
vue-cli-plugin-typescript
а также
vue-cli-plugin-babel
называться раньше моего? Или способ использования
webpack-chain
чтобы правило отменяло их после ?