В моем приложении есть подпроект, содержащий файл, который не компилируется: misc/index.ts
Как сделать так, чтобы веб-пакет полностью игнорировал этот файл или папку?
Как для воспроизведения
webpack --mode development
Ожидаемое поведение
Webpack работает успешно, как если бы папка misc
не существовала.
Фактическое поведение
Webpack жалуется на misc/index.ts
не компиляцию.
Дополнительные примечания
Файл misc/index.ts
не требуется нигде.
Файл misc/index.ts
не компилируется специально, потому что я хочу, чтобы webpack полностью игнорировал эту папку.
В идеале, я бы хотел указать webpack на включите некоторые файлы, а не исключайте некоторые.
Структура проекта
.
├── misc
│ └── index.ts
├── node_modules
├── package.json
├── package-lock.json
├── README.md
├── src
│ └── index.ts
├── tsconfig.json
└── webpack.config.js
Вы можете попробовать его на https://github.com/sguillia/webpack-exclude: просто клонировать и сделать npm run build
То, что я пробовал
Я не нашел возможности заставить webpack игнорировать папку.
* 10 55 * Правило исключения не определяет, какие файлы анализируются веб-пакетом, как объяснено
здесь .
У меня тоже не было успеха с module.noParse
.
webpack.config. js
//@ts-check
"use strict"
const path = require("path")
/**@type {import('webpack').Configuration}*/
const config = {
target: "node",
entry: "./src/index.ts",
output: {
path: path.resolve(__dirname, "dist"),
filename: "bundle.js",
libraryTarget: "commonjs",
devtoolModuleFilenameTemplate: "../[resource-path]",
},
devtool: "source-map",
resolve: {
extensions: [".ts"],
},
module: {
rules: [
{
test: /\.ts$/,
exclude: /node_modules/,
use: [
{
loader: "ts-loader",
},
],
},
{
test: /\.ts$/,
exclude: /misc/,
},
],
},
}
module.exports = config