2012-06-17 30 views
50

Có cách nào để gỡ lỗi dòng lệnh CoffeeScript không?Gỡ lỗi CoffeeScript theo từng dòng

Tôi hiểu rằng nó biên dịch thành Javascript. Nhưng điều này nghe có vẻ như nó có thể làm cho nó một nỗi đau để gỡ lỗi.

+4

Kể từ khi JavaScript được tạo ra duy trì thụt đầu dòng, tên của hàm và biến gỡ lỗi không gần như là xấu như hầu hết mọi người nghĩ. Ngoài ra, hỗ trợ cho "Bản đồ nguồn" đang đến (trong phiên bản tiếp theo?) Trong CoffeeScript để giải quyết vấn đề này: http://www.coffeescriptlove.com/2012/04/source-maps-for-coffeescript.html –

+1

Bạn có thể định cấu hình [coffeescript debbuging trong JetBrains WebStorm] (http://www.youtube.com/watch?feature=player_detailpage&v=Sl1Uk3zT5Fg) –

Trả lời

13

Hiện tại, thật khó để gỡ lỗi CoffeeScript. Hầu hết mọi người sử dụng rất nhiều bài kiểm tra đơn vị.

Có một số công việc đang được thực hiện khi gỡ lỗi cho CoffeeScript nhưng có lẽ một lúc trước khi chúng tôi có trình gỡ lỗi thực sự tốt. Một ví dụ là http://www.infoq.com/news/2011/08/debug-languages-on-javascript-vm

+15

Kiểm tra đơn vị đáng sợ để tránh gỡ lỗi cuộc gọi ngăn xếp hạnh phúc ?? Yikes! – Esteban

+0

Tôi sẽ thả bugger ở đây: https://github.com/jkrems/bugger. Nó có gỡ lỗi từng bước cho tập lệnh cà phê 2.x. Đối với tập lệnh cà phê 1.x có nút xoay mạnh mẽ của nút kiểm tra: https://github.com/strongloop/node-inspector –

29

nếu bạn đang chạy coffeescript từ nhà ga bạn có thể gỡ lỗi nó xếp hàng-cho-line sử dụng node-inspector, tung ra kịch bản của bạn theo cách này:

coffee --nodejs --debug-brk yourscript.coffee 
+1

cho kết nối tự động gỡ lỗi Tôi đang sử dụng 'coffee --nodejs debug yourscript.coffee ' – dmi3y

33

Cập nhật: hiện nay là một redesign của trình biên dịch coffeescript tạo ra source maps, cho phép bạn gỡ lỗi bản coffeescript của mình trong các phiên bản Google Chrome gần đây nhất (từ 18 trở lên tôi nghĩ).

Tôi nghĩ rằng nó chưa sẵn sàng cho sản xuất, nhưng điều đáng nói đến.

+1

Chú ý rằng bản đồ nguồn chỉ khả dụng cho Chrome Canary, WebKit mỗi đêm và Firefox 23+. BTW, đó sẽ là cách tốt nhất để gỡ lỗi mã JavaScript đã biên dịch ở phía máy khách, vì vậy +1 cho câu trả lời của bạn;) – Wilk

+0

Có sẵn trong Chromium 39, phiên bản hiện tại trong kho lưu trữ Ubuntu Trusty. Và, tốt, "không sẵn sàng sản xuất" không hạn chế việc sử dụng nó trong quá trình phát triển. –

9

Vâng, với node-inspector:

npm install -g node-inspector 

Bằng cách đặt các tuyên bố debugger vào mã nguồn kịch bản của bạn, bạn sẽ cho phép một breakpoint. Sau đó nhập vào bảng điều khiển:

coffee -c -m myscript.coffee 
node-debug myscript.js 

Thanh tra nút hỗ trợ bản đồ nguồn ra khỏi hộp, vì vậy không cần cấu hình thêm.

Để biết thêm thông tin see this post.

+0

Thật thú vị nhưng làm thế nào để tôi làm cho anh ta có 'yêu cầu' something.coffee'' vào tài khoản? –

Các vấn đề liên quan