问题描述
我的web应用程序有两个步骤的编译过程。首先,我将CoffeeScript文件编译为JavaScript文件[1]。然后JavaScript Closure Compiler [2]编译JavaScript文件(来自CoffeeScript和外部的,像从 grunt-angular-templates
中的AngularJS模板生成的)
I've got a two-step compilation process for my web application. Firstly, I compile CoffeeScript files into JavaScript files [1]. Then the JavaScript files (both ones that come from CoffeeScript, and external ones, like produced from AngularJS templates by grunt-angular-templates
) are compiled by Google Closure Compiler [2] into a single minimized file.
CoffeeScript ---[1]---> JavaScript --[2]--\
\->
AngularJS templates --> JavaScript ----------> single minimized JS file
/->
other JS files -------/
[2]产生源映射。
是否可以将这些源映射合并为一个源映射,这将允许我从运行最小化的JS文件?
Is it possible to combine these source maps into a single source map that would allow me to debug CoffeeScript files from a web browser that runs the minimized JS file?
换句话说:让我们说源映射[1]由一个函数表示:
In other words: let say the source map [1] is represented by a function:
f(position in CoffeeScript) = position in JavaScript
并且源映射[2]由以下函数表示:
and the source map [2] is represented by a function:
g(position in JavaScript) = position in minimized JS
我想获得一个由函数组成表示的源映射:
I'd like to get a source map which is represented by a function composition:
h(position in CoffeeScript) = g(f(position in CoffeeScript)) =
= position in minimized JS
推荐答案
尝试 - 它的设计正是为了这个目的(我是作者,我来到这里寻找相关工具的信息)。只要 .map
文件在正确的位置(或内联为数据URI),您只需运行 sorcery
对生成的文件,它将定位中间源地图并撰写它们。
Try sorcery - it's designed for exactly this purpose (I'm the author, I came here looking for info on related tools). As long as the .map
files are in the correct location (or inlined as data URIs), you just run sorcery
on the generated file and it will locate the intermediate sourcemaps and compose them.
这篇关于组合两个编译步骤的源映射的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!