我在 TS 中编写了一个库和一个测试我的库的程序。我已经为库和程序启用了源映射,并且我正在使用 node.js 调试器。
调试程序的 TS 代码是有效的,但是一旦我进入库函数的调用,我就会调试发出的 JS 代码而不是我的 TS 源。
我将库的 package.json 的 'files' 字段设置为 [ "lib" ],其中 lib 是包含 JS 文件以及源映射的目录,但这并没有改变任何内容。
我还有另一种方法如何告诉 VS Code 它应该使用我的库的源映射?
node.js source-maps typescript visual-studio-code vscode-debugger
我正在尝试使用Chrome开发工具中的TypeScript调试工作.我为所有.ts文件生成了源映射,javascript看起来正确,但Chrome只加载index.html中引用的js文件并忽略所有模块.这有点意义,因为Typescript编译器似乎没有对我的模块做任何事情.如果有人可以在下面的例子中解释我做错了什么,那就太好了.
我的项目设置如下:
root/
src/
Company.ts
User.ts
app.ts
index.html
Run Code Online (Sandbox Code Playgroud)
Company.ts
module Company {
export class Job {
public title:string;
public description:string;
constructor(title:string, desc:string){
this.title = title;
this.description = desc;
};
}
}
Run Code Online (Sandbox Code Playgroud)
User.ts
///<reference path="Company.ts"/>
module User {
export class Person {
public first:string;
public last:string;
private myJob:Company.Job;
private myAccount:User.Account;
constructor(firstName:string, lastName:string){
this.first = firstName;
this.last = lastName;
}
public getName():string{
return this.first + ' ' + this.last;
}
public setJob(job:Company.Job){
this.myJob = job;
}
public setAccount(acct:User.Account){
this.myAccount = acct;
} …Run Code Online (Sandbox Code Playgroud) 我正在逆向工程一个神奇的脚本。我有一个ug lified源代码和uglifyjs生成的源映射。
有人知道有什么直接的方法可以从中获得至少部分可读的源代码吗?我发现了一些晦涩的方法,包括通过多种语言进行转换,但我希望能有更好的方法。
谢谢!
我有一个.js文件列表,我有一个缩小版本的这些文件与源地图.已使用UglifyJS创建缩小文件
是否可以从缩小的文件中提取单个js文件的代码?也许通过阅读源地图?
例如:
original files:
1)head.js
2)tail.js
3)stomach.js
4)liver.js
minified file (containing code of all of above files):
-> body.min.js
source map:
-> body.min.js.map
Run Code Online (Sandbox Code Playgroud)
是否有可能从body.min.js中提取胃部.js的缩小代码(字符串)?
有“显示原始来源”复选框,但似乎不起作用。我试图找到一种方法来禁用 FF Developer Tools 和 Firebug 中的源映射,但没有任何成功。
顺便说一句:在 Chrome 开发工具中禁用它们很容易。
我正在尝试让webpack为React项目输出正确的源图,该项目使用CommonsChunkPlugin拆分为应用程序和供应商块,并使用UglifyJsPlugin缩小.这是针对生产环境的,所以我:
所有这些对于devtool配置选项来说似乎有点太多了,所以我试图直接使用devtool:false来使用SourceMapDevToolPlugin.
webpack配置的相关部分如下所示:
entry: production ? {
app: './src/index.jsx',
vendor: Object.keys(packageDotJson.dependencies)
} : './src/index.jsx',
output: {
path: production ? './dist' : './assets',
publicPath: production ? '' : '/',
filename: production ? 'app.[hash].js' : 'app.js'
},
plugins: production ? [
new webpack.optimize.CommonsChunkPlugin(/* chunkName= */"vendor", /* filename= */"vendor.bundle.[hash].js"),
new webpack.optimize.DedupePlugin(),
new webpack.optimize.UglifyJsPlugin({
compress: {
warnings: false
}
}),
new ExtractTextPlugin("app.[hash].css"),
new webpack.SourceMapDevToolPlugin({
test: [/\.js$/, /\.jsx$/],
filename: "app.[hash].js.map",
append: "//# sourceMappingURL=[url]",
moduleFilenameTemplate: "[absolute-resource-path]",
fallbackModuleFilenameTemplate: "[absolute-resource-path]",
columns: false
}),
new …Run Code Online (Sandbox Code Playgroud) 使用meteor,有没有办法在部署过程中创建源映射?
目的是将源映射上传到支持它们的 js 错误跟踪器服务 (atatus.com),以获得更多有用的错误消息。现在我在 .meteor 目录中找到的唯一源映射是开发环境。
假设我有这个样式表:
.d1
width: 10px
.d2
width: 20px
Run Code Online (Sandbox Code Playgroud)
它会产生以下 css 代码(带有nested输出样式):
.d1 {
width: 10px; }
.d1 .d2 {
width: 20px; }
Run Code Online (Sandbox Code Playgroud)
源映射 ( v3) 包含以下映射:
AAAA,AAAA,GAAG,CAAC;EACA,KAAK,EAAE,IAAK,GAES;EAHzB,AAEI,GAFD,CAEC,GAAG,CAAC;IACA,KAAK,EAAE,IAAK,GAAG
Run Code Online (Sandbox Code Playgroud)
使用此服务对其进行解码后,我得到:
([0,0](#0)=>[0,0]) | ([0,0](#0)=>[0,0]) | ([0,3](#0)=>[0,3]) | ([0,4](#0)=>[0,4])
([1,4](#0)=>[1,2]) | ([1,9](#0)=>[1,7]) | ([1,11](#0)=>[1,9]) | ([1,16](#0)=>[1,13]) | ([3,25](#0)=>[1,16])
([0,0](#0)=>[2,2]) | ([2,4](#0)=>[2,2]) | ([0,3](#0)=>[2,5]) | ([2,4](#0)=>[2,6]) | ([2,7](#0)=>[2,9]) | ([2,8](#0)=>[2,10])
([3,8](#0)=>[3,4]) | ([3,13](#0)=>[3,9]) | ([3,15](#0)=>[3,11]) | ([3,20](#0)=>[3,15]) | ([3,23](#0)=>[3,18])
Run Code Online (Sandbox Code Playgroud)
源代码的生成方式与( )类似。node-sasslibsass
我的理解是,这些是原始文件和结果文件中的点对。但我们以第二行的最后一对为例:([3,25](#0)=>[1,16])。第 3 行第 25 列?这有点出乎你的意料,你不觉得吗? …
我在生产中阅读了这个问题源地图文件 - 这样安全吗?.我想用源代码在不同的文件夹中生成源映射文件.有没有办法用webpack做到这一点?我还在WebStorm中读取了此线程的相对SourceMap路径以进行调试并进行了测试,但再次失败.
我正在尝试在 webpack 中启用 sourceMaps,但 sass-loader 和 postcss-loader 组合似乎存在问题。
启用 sass-loader 和 postcss-loader 后,我的控制台显示“无源”:
但是当我禁用 postcss-loader 时,sourceMap 工作正常并指向“排版”文件:
webpack.config.js
const path = require('path');
const ExtractTextPlugin = require('extract-text-webpack-plugin');
module.exports = {
mode: 'development',
entry: './src/index.js',
output: {
path: path.resolve(__dirname, 'dist'),
publicPath: '/dist',
filename: 'js/bundle.js',
},
devtool: 'inline-source-map',
module: {
rules: [{
test: /\.css$/i,
use: ExtractTextPlugin.extract({
fallback: 'style-loader',
use: ['css-loader', 'postcss-loader']
})
},
{
test: /\.scss$/i,
use: ExtractTextPlugin.extract({
fallback: 'style-loader',
use: [{
loader: 'css-loader',
options: {
sourceMap: true
}
},
{
loader: 'postcss-loader', …Run Code Online (Sandbox Code Playgroud) source-maps ×10
javascript ×4
webpack ×3
css ×2
node.js ×2
typescript ×2
deployment ×1
firebug ×1
firefox ×1
meteor ×1
obfuscation ×1
sass ×1
sass-loader ×1
uglifyjs ×1
uglifyjs2 ×1