gpt4 book ai didi

intellij-idea - 使用 IntelliJ 调试 CoffeeScript

转载 作者:行者123 更新时间:2023-12-04 03:38:21 24 4
gpt4 key购买 nike

我正在开始一个新的 Web 项目,配置的最后一部分是为我的 CoffeeScripts 文件启用调试。

整个项目是使用 Grunt 任务构建的,该任务将 coffee 编译为 js 并生成正确的映射文件,但我无法在 IntelliJ 中进行 Coffeescript 调试。

请注意,我不想使用 IntelliJ 文件观察器。

这是我的 Gruntfile :

module.exports = (grunt) ->
grunt.initConfig
pkg: grunt.file.readJSON('package.json')
coffee:
options:
sourceMap: true
files:
expand: true
flatten: true
cwd: 'src/'
src: ['**/*.coffee']
dest: 'src/'
ext: '.js'
concat:
option:
separator: ';'
dist:
src: ['src/**/*.js']
dest: 'dist/<%= pkg.name%>.js'
uglify:
options:
banner: '/*! <%= pkg.name %> v<%= pkg.version%> by Pierre Degand <%= grunt.template.today("dd-mm-yyyy") %> */\n'
dist:
files:
'lib/<%= pkg.name%>.min.js': ['<%= concat.dist.dest %>']
watch:
files: ['<%= coffee.files.src %>']
tasks: ['coffee', 'concat', 'uglify']

grunt.loadNpmTasks('grunt-contrib-concat')
grunt.loadNpmTasks('grunt-contrib-uglify')
grunt.loadNpmTasks('grunt-contrib-coffee')
grunt.loadNpmTasks('grunt-contrib-watch')

grunt.registerTask('default', ['coffee', 'concat', 'uglify'])

我的简单 CoffeeScript 文件(断点在 IntelliJ 的第 2 行):

name = 'Pierre'
console.log "Hello #{name} !"

从 Grunt 生成的 JS 文件:

(function() {
var name;

name = 'Pierre';

console.log("Hello " + name + " !!");

}).call(this);

/*
//@ sourceMappingURL=app.js.map
*/

源图

{
"version": 3,
"file": "app.js",
"sourceRoot": "",
"sources": [
"app.coffee"
],
"names": [],
"mappings": "AAAA;CAAA,GAAA,EAAA;;CAAA,CAAA,CAAO,CAAP,IAAA;;CAAA,CACA,CAAA,CAAa,CAAb,EAAO,CAAM;CADb"
}

最后是我用来测试的 html

<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>

<script type="text/javascript" src="src/app.js"></script>
</body>
</html>

当我使用 File watchers 时,.js 和 .map.js 是 .coffee 文件的子文件,我可以在不使用 File Watchers 的情况下实现相同的行为吗?

如果我在 IntelliJ 中右键单击/“Debug index.html”,我可以读到“Hello Pierre!!”在我的 IntelliJ 调试器控制台中,但脚本在 console.log()

上没有中断

有人遇到同样的问题吗?

谢谢!

最佳答案

When I used File watchers, the .js and the .map.js were subfiles of the .coffee file, can I achieve the same behavior without using File Watchers?

不,你不能。这是一个文件观察器功能

If I right-click/"Debug index.html" in IntelliJ, I can read "Hello Pierre!!" in my IntelliJ debuger console, but the script is not breaked on the console.log()

如果我在执行代码后在浏览器中刷新页面,这对我有用。请投票给this ticket

关于intellij-idea - 使用 IntelliJ 调试 CoffeeScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17537255/

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