使用 webpack 从包中排除 ts/js 文件

Har*_*tel 6 bundle bundler webpack ts-loader angular

我是 webpack 的新手。目前我正在使用 webpack 开发 angular2 应用程序。作为要求的一部分,我们希望有一个不应捆绑的设置文件,以便在捆绑后也可以更改 settings.js 文件中的 URL。

下面是两个文件的代码。

设置.ts

const foo = {
    url:'localhost'
};
export { foo };
Run Code Online (Sandbox Code Playgroud)

脚本文件

import { foo }  from 'settings';
Run Code Online (Sandbox Code Playgroud)

两个 ts 文件都将在 bundle 之前编译为 js 文件。现在我想从包中排除 settings.ts 文件,并想在 dist 文件夹中单独复制 setting.ts 文件。

下面是 webpack.config 文件

loaders: [

            {
                test: /\.ts$/,
                loaders: ['awesome-typescript-loader', 
                          'angular2-template-loader'],
                exclude: [/\settings.ts$/]
            },
]
Run Code Online (Sandbox Code Playgroud)

我发现这没有运气。

我可以使用 CopyWebpackPlugin 复制 dist 文件夹中的 settings.js 文件。但无法从捆绑中排除 settings.ts 文件。

下面是文件夹结构的截图。Webpack.config 与 src 文件夹在同一级别

在此处输入图片说明

Tom*_*ski 0

试试这样:

exclude: [
  path.resolve(__dirname, '/settings.ts'),
]
Run Code Online (Sandbox Code Playgroud)

正如GitHub 问题上所建议的那样。