typescript - 网页包 ts-loader : change tsconfig filename

标签 typescript webpack tsconfig ts-loader

我有 2 个 tsconfigs,一个用于我的开发构建,一个用于我的生产构建。
我选择带有 -p 标志的 tsconfig :
tsc -p dev.tsconfig.json

Ts-loader 正在寻找 tsconfig.json 文件。如何使用 ts-loader 指定另一个文件名?

module.exports = {
    entry : __dirname + "/src/app/main.ts",
    output : {
        path : __dirname + "/dist",
        filename : "bundle.js"
    },
   resolve : {
     extensions : ["", ".webpack.js", ".web.js", ".js", ".ts"]
   },
   module: {
        loaders: [
            { test: /\.ts?$/, loader: "ts" }
        ]
    }
};

最佳答案

在 Webpack 4 中,您需要将选项指定到 use 对象中:

use: [{
    loader: 'ts-loader',
    options: {
        configFile: "tsconfig.webpack.json"
    }
}]

完成 Webpack 配置:

var path = require('path');

module.exports = {
    entry: path.resolve(__dirname, 'src') + '/index.ts',
    output: {
        path: path.resolve(__dirname, 'dist'),
        filename: 'your-library-name.js',
    },
    module: {
        rules: [
            {
                test: /\.ts$/,
                use: [{
                    loader: 'ts-loader',
                    options: {
                        configFile: "tsconfig.webpack.json"
                    }
                }],
                exclude: /node_modules/,
            }
        ]
    },
    mode: 'development',
    resolve: {
        extensions: ['.js', '.ts']
    },
    devtool: false
};

关于typescript - 网页包 ts-loader : change tsconfig filename,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40426378/

相关文章:

typescript - 使用reflect-metadata获取返回类型,当返回类型是某物的 promise 时

node.js - 30 天后自动删除 MongoDB 文档

webpack 代码分割 - 创建一个额外的包 : 0. bundle.js

typescript - 找不到名称 'document' 。你需要改变你的目标库吗?尝试更改 `lib` 编译器选项以包含 'dom' .ts(2584)

typescript - 有什么方法可以在 tsconfig 中设置严格模式下使用 Loopback 4?

typescript 通过兼容的属性类型约束泛型

angular - Typescript 对象动态分配更改 fieldName

node.js - 我的 vue.config 文件中的代理点是什么?

javascript - 使用 Storybook 解决组件中的绝对/别名导入问题

javascript - Webpack 使用 Typescript : Common settings in both configs, 那么哪个优先?