2013-10-18 26 views
80

我正在看這個jsfiddle:http://jsfiddle.net/carpasse/mcVfK/ 它工作正常,這不是問題,我只是想知道如何通過JavaScript進行調試。我試圖使用調試器命令,我無法在源選項卡中找到它? 任何想法如何我可以調試呢?如何在jsfiddle中調試js

從小提琴一些代碼:

angular.module('app', ['appServices']) 
    .config(['$routeProvider', function($routeProvider) { 
     $routeProvider. 
       when('/home', {templateUrl: 'home.html', controller: HomeCtrl}). 
       when('/list', {templateUrl: 'list.html', controller: ListCtrl}). 
       when('/detail/:itemId', {templateUrl: 'detail.html', controller: DetailCtrl}). 
       when('/settings', {templateUrl: 'settings.html', controller: SettingsCtrl}). 
       otherwise({redirectTo: '/home'}); 
}]); 
+0

將單詞'debugger;'插入代碼中。 Chrome和Firefox將自動打開一個直通式調試器! (我從@ user3335908的回答中複製了這個提示,使其更加突出) –

回答

40

的JavaScript是由瀏覽器的源標籤的fiddle.jshell.net文件夾執行。您可以將斷點添加到下面Chrome屏幕截圖中顯示的索引文件中。

Debugging JSFiddle in Chrome

enter image description here

+6

這對我來說沒有任何意義。我得到一個空的索引文件 –

+1

@OliverWatkins對我來說也是空的,我通過點擊頂部的「更新」來解決這個問題,然後我注意到在我再次運行後,在開發工具面板的Sources選項卡中,在「jsfiddle.net」 「,然後在我的命名文件夾下,有一個額外的目錄和另一個顯示代碼的索引文件。希望這可以幫助! – MilesMorales

+0

我有一個第三個文件夾下fiddle.jshell.net也有(索引)。如果我打開它,那裏有一個嵌入了js的html文件。 (在我寫這個的時候是48行) –

3

除了其他的答案。

很多時候它是有用的只是調試信息寫入到控制檯:

console.log("debug information here"); 

的輸出可在瀏覽器的開發者工具控制檯。就像它是從通常的JavaScript代碼記錄。
這很簡單有效。

2

這裏是另一個地方:)

Jsfiddle.net節點。

enter image description here

3

東西值得一提。如果你曾經使用chrome開發工具。 Press ctrl + shift + F您可以搜索源文件中的所有文件。

+2

這很方便,在Mac上它是Cmd + Alt + F –

12

在代碼中使用debugger;語句。瀏覽器在此語句中插入一個斷點,您可以繼續瀏覽器的調試器。

這應該至少在Chrome和Firefox中起作用。 https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Statements/debugger

angular.module('app', ['appServices']) 
.config(['$routeProvider', function($routeProvider) { 
    // *** Debugger invoked here 
    debugger; 
    $routeProvider. 
      when('/home', {templateUrl: 'home.html', controller: HomeCtrl}). 
      when('/list', {templateUrl: 'list.html', controller: ListCtrl}). 
      when('/detail/:itemId', {templateUrl: 'detail.html', controller: DetailCtrl}). 
      when('/settings', {templateUrl: 'settings.html', controller: SettingsCtrl}). 
      otherwise({redirectTo: '/home'}); 
}]); 
+0

這是最好的答案! – vibs2006

+0

這真的很棒 –