ì´ íë¬ê·¸ì¸ì ì¬ì©íë©´ ìì¤ë§µ ìì±ì ëì±ë ì¸ë°íê² ì ì´ í ì ììµëë¤. ì´ íë¬ê·¸ì¸ì devtoolì ì¤ì ìµì
ì íµí´ ìëì¼ë¡ íì±íë©ëë¤.
new webpack.SourceMapDevToolPlugin(options);ë¤ìê³¼ ê°ì ìµì ì´ ì ê³µë©ëë¤.
test (string RegExp [string, RegExp]): íì¥ìì ë°ë¼ ìì¤ë§µì í¬í¨í©ëë¤. (기본ê°ì .js, .mjs ë° .css).
include (string RegExp [string, RegExp]): ê°ê³¼ ì¼ì¹íë ê²½ë¡ì ìì¤ë§µì í¬í¨í©ëë¤.
exclude (string RegExp [string, RegExp]): ê°ê³¼ ì¼ì¹íë 모ëì ìì¤ë§µ ìì±ìì ì ì¸í©ëë¤.
filename (string): ìì¤ë§µì íì¼ ì´ë¦ì ì ìí©ëë¤ (ê°ì´ ì ê³µëì§ ìì¼ë©´ ì¸ë¼ì¸ì¼ë¡ ì¤ì ë©ëë¤).
append (string function false): 기존 ì ì
ì ê°ì ì¶ê°í©ëë¤. ì¼ë°ì ì¼ë¡ #sourceMappingURL 주ìì´ ì¬ì©ë©ëë¤. [url]ì ìì¤ë§µ íì¼ì URLë¡ ëì²´ë©ëë¤. Webpack v4.36.0ë¶í°ë [chunk], [filename] ë° [contenthash]ì ê°ì ê²½ë¡ íë¼ë¯¸í°ê° ì§ìë©ëë¤. falseë¡ ì¤ì íë©´ ê° ì¶ê°ê° ë¹íì±íë©ëë¤.
ë²ì 5.84.0ë¶í° webpackì ê²½ë¡ì ì ì ì ë³´ ê°ì²´ë¥¼ ì¸ìë¡ ë°ìë¤ì´ê³ 문ìì´ì ë°ííë 'append' ìµì ì íì©í©ëë¤.
(pathData: PathData, assetInfo?: AssetInfo) => string;moduleFilenameTemplate (string): output.devtoolModuleFilenameTemplateì ì°¸ê³ íì¸ì.
fallbackModuleFilenameTemplate (string): ì ë§í¬ë¥¼ ì°¸ê³ íì¸ì.
ignoreList (string|RegExp|array): ìì¤ ë§µìì ì§ì ë ê°ê³¼ ì¼ì¹íë ìì¤ íì¼ì 무ìí ì§ ì¬ë¶ë¥¼ ê²°ì í©ëë¤.
module = true (boolean): ë¡ëê° ìì¤ ë§µì ìì±í´ì¼ íëì§ ì¬ë¶ë¥¼ ëíë
ëë¤.
columns = true (boolean): ì´ ë§¤íì ì¬ì©í´ì¼ íëì§ ì¬ë¶ë¥¼ ëíë
ëë¤.
namespace (string): DevToolsìì ì¬ë¬ WebPack 루í¸ë¥¼ íì©íë ë¤ìì¤íì´ì¤ ì ëì¬ì
ëë¤. output.devtoolNamespace를 ì°¸ê³ íì¸ì.
noSources = false (boolean): ìì¤ íì¼ ì½í
ì¸ ê° ìì¤ ë§µì í¬í¨ëì§ ìëë¡ í©ëë¤.
publicPath (string): ê³µê° ê²½ë¡ ì ëì¬ê° ìë ì ë URLì ìì±í©ëë¤(ì: https://example.com/project/).
fileContext (string): [file] ì¸ì를 ì´ ëë í°ë¦¬ë¥¼ 기ì¤ì¼ë¡ í©ëë¤.
sourceRoot (string): SourceMapì sourceRoot ìì±ì ì¬ì©ì ì§ì ê°ì ì ê³µí©ëë¤.
debugIds (boolean): trueë¡ ì¤ì íë©´ ìì¤ ë° ìì¤ë§µìì ê³ ì IDê° ìì±ëì´ ì¬ë¬ ë¹ëìì ìì¤ë§µì ìë³íë ë° ëìì´ ë©ëë¤. ìì¸í ë´ì©ì TC39 ìì¤ë§µ ëë²ê·¸ ID ì ìì ì°¸ê³ íì¸ì.
fileContext ìµì
ì ../../ê° ì ë [url]ì ëíëì§ ìëë¡ ìì ëë í°ë¦¬ì ìì¤ë§µì ì ì¥íë ¤ë ê²½ì°ì ì ì©í©ëë¤.
ë¤ìì ì´ íë¬ê·¸ì¸ì ëª ê°ì§ ì¼ë°ì ì¸ ì¬ì© ì¬ë¡ì ëë¤.
ë¤ì ì½ë를 ì¬ì©íì¬ ì¤ì ìµì
devtool: inline-source-mapì 커ì¤í
íë¬ê·¸ì¸ ì¤ì ì¼ë¡ ëë±íê² ë°ê¿ ì ììµëë¤.
module.exports = {
// ...
devtool: false,
plugins: [new webpack.SourceMapDevToolPlugin({})],
};ë¤ì ì½ëë vendor.js ë²ë¤ ë´ ëª¨ëì ìì¤ë§µì ì ì¸í©ëë¤.
new webpack.SourceMapDevToolPlugin({
filename: '[file].map[query]',
exclude: ['vendor.js'],
});ìì¤ë§µì URLì ì¤ì íì¸ì. ì¸ì¦ì´ íìí í¸ì¤í¸ì í¸ì¤í íë ë° ì ì©í©ëë¤.
new webpack.SourceMapDevToolPlugin({
append: '\n//# sourceMappingURL=https://example.com/sourcemap/[url]',
filename: '[file].map[query]',
});ìì¤ë§µì´ ìì ëë í°ë¦¬ì ì ì¥ëë ê²½ì°,
project
|- dist
|- public
|- bundle-[hash].js
|- sourcemaps
|- bundle-[hash].js.map
ë¤ìê³¼ ê°ì´ ì¤ì íë©´
new webpack.SourceMapDevToolPlugin({
filename: 'sourcemaps/[file].map',
publicPath: 'https://example.com/project/',
fileContext: 'public',
});ë¤ì URLì ìì±í©ëë¤.
https://example.com/project/sourcemaps/bundle-[hash].js.map