gpt4 book ai didi

angularjs - 如何防止webpack在源码目录下生成编译后的文件

转载 作者:搜寻专家 更新时间:2023-10-30 20:40:59 24 4
gpt4 key购买 nike

我正在将我的 AngularJs 项目从 ES6“迁移”到 TypeScript,我正在使用带有 ts-loader 的 webpack。

问题是编译后的文件和源映射都写在我的文件夹中,而不像使用 webpack-dev-server 时从内存中提供的 bundle.js 文件。

我的目录中没有 index.ts,而是:

.
├── index.js
├── index.js.map
└── index.ts

这可以做到吗?

我的 tsconfig.json 是:

{
"compilerOptions": {
"target": "es6",
"sourceMap": true,
"module": "commonjs"
},
"exclude": [
"node_modules",
"src/dist"
],
"version": "1.6.2"
}

webpack.config.js 是:

module.exports = {
context: PATHS.app,
entry: {
app: ['./index.ts']
},
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'bundle.js'
},

// add resolve clause:root

module: {
loaders: [
{ test: /\.ts$/, exclude: /node_modeuls/, loader: 'babel-loader!ts-loader' },
{ test: /\.js$/, exclude: /node_modules/, loader: 'babel-loader' },
{ test: /\.less$/, loader: "style!css!less", exclude: /node_modules/ },
{ test: /\.html$/, loader: "html" },
{ test: /\.(ttf|eot|svg|otf)$/, loader: "file" },
{ test: /\.woff(2)?$/, loader: "url?limit=10000&minetype=application/font-woff" },
{ test: /\.jpe?g$|\.gif$|\.png$|\.svg$|\.woff$|\.ttf$|\.wav$|\.mp3$/, loader: require.resolve("file-loader") + "?name=../[path][name].[ext]"}
]
},

devServer: {
contentBase: "./src"
},

devtool: '#inline-source-map'

}

最佳答案

我认为这与webpack无关,而与tsc和IDE有关。

可能您的源代码由 IDE 自动编译,默认情况下编译结果放在源文件旁边。

您可以尝试在 IDE 中禁用自动编译。大多数 IDE 识别 compileOnSave 选项。在 tsconfig.json 中将其设置为 false,您应该没问题。

示例 tsconfig.json

{
"compilerOptions": {
"target": "es6",
"sourceMap": true,
"module": "commonjs",
"compileOnSave": false
},
"exclude": [
"node_modules",
"src/dist"
],
"version": "1.6.2"
}

您也可以尝试通过在 tsconfig.json 中定义 outDir 来解决此问题。

您的示例 tsconfig.json 可能看起来像

{
"compilerOptions": {
"target": "es6",
"sourceMap": true,
"module": "commonjs",
"outDir": "compiled"
},
"exclude": [
"node_modules",
"src/dist"
],
"version": "1.6.2"
}

现在所有的编译结果都会放在compiled目录下,这个目录很容易被忽略。

关于angularjs - 如何防止webpack在源码目录下生成编译后的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33440707/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com