Javascript 未定义网页包源映射导入(firefox调试器)
我一直在尝试找出网页包并生成源地图。虽然源代码映射即将出来,但我无法调试导入。请参阅和的这张图片(只是为了证明调试器正在工作) 我更喜欢使用firefox,因此如何设置源映射以正确工作,并向我提供有关导入模块的信息 我的最简单的例子如下: 梅因酒店 stack.ts utils.ts tsconfig.json webpack.config.jsJavascript 未定义网页包源映射导入(firefox调试器),javascript,typescript,firefox,browser,webpack,Javascript,Typescript,Firefox,Browser,Webpack,我一直在尝试找出网页包并生成源地图。虽然源代码映射即将出来,但我无法调试导入。请参阅和的这张图片(只是为了证明调试器正在工作) 我更喜欢使用firefox,因此如何设置源映射以正确工作,并向我提供有关导入模块的信息 我的最简单的例子如下: 梅因酒店 stack.ts utils.ts tsconfig.json webpack.config.js 这个问题在三年多前发布,却没有得到回应,这让我感到非常难过。我一直都有这个问题。。。但我想没有人关心:(@TravRob问题在于构建工具,比如webp
这个问题在三年多前发布,却没有得到回应,这让我感到非常难过。我一直都有这个问题。。。但我想没有人关心:(@TravRob问题在于构建工具,比如webpack,在捆绑的javascript输出中重写导入变量名,因此无论出于何种原因,有时候,某些浏览器可能会将源映射映射到变量。不幸的是,显然,这有点刚刚学会了如何使用它。一种解决方案是查看右侧sid上的
范围
面板e(在调用堆栈下
),您可能会在它们的编译名称下看到导入。我对这一问题在3年前发布却没有得到回复感到非常难过。我一直都有这个问题……但我想没有其他人关心:(@TravRob问题在于构建工具,比如webpack,在捆绑的javascript输出中重写导入变量名,因此无论出于何种原因,有时候,某些浏览器可能会将源映射映射到变量。不幸的是,显然,这有点刚刚学会了如何使用它。一种解决方案是查看右侧sid上的范围
面板e(在调用堆栈
下),您可能会在编译名称下看到导入
import { write } from './utils';
import { Stack } from './stack';
const appRef: any= document.querySelector('#app');
const stack: Stack = new Stack(['alice', 'bob', 'eve']);
stack.add('charlie');
write(stack.members.toString(), appRef);
export class Stack {
private _members: string[];
constructor(members: string[]) {
this._members = members;
}
get members(): string[] {
return this._members;
}
push(member: string) {
this._members.push(member);
}
pop(): string | undefined {
return this._members.pop();
}
}
export function write(text: string, domElement: any) {
if (domElement) {
const textNode: any = document.createTextNode(text);
domElement.append(textNode);
} else {
document.write(text);
}
}
{
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"sourceMap": true,
"strict": true
}
}
const path = require('path');
const webpack = require('webpack');
const HtmlWebpackPlugin = require('html-webpack-plugin');
module.exports = {
entry: './src/main.ts',
module: {
rules: [
{
test: /\.tsx?$/,
use: 'ts-loader',
exclude: /node_modules/
}
]
},
resolve: {
extensions: [".ts", ".js"]
},
output: {
filename: 'bundle.js',
path: path.resolve(__dirname, 'dist')
},
devtool: 'source-map',
devServer: {
contentBase: path.resolve(__dirname, '.'),
hot: true
},
plugins: [
new HtmlWebpackPlugin({
filename: 'index.html',
template: 'index.html'
}),
new webpack.NamedModulesPlugin(),
new webpack.HotModuleReplacementPlugin()
],
};