2015-09-11 174 views
0

我剛剛開始與nativescript所以請介意,如果這只是一個簡單的問題。如何調試nativescript代碼?

我的手機上運行我的代碼以tns run android但它啓動時啓動噸洛的也在控制檯,這樣我怎麼能調試自己編寫的代碼可以說我有我的代碼console.log語句,但我可以」 t很容易找到我在原木堆的聲明。

回答

5

您可以使用可用於JavaScript虛擬機的調試器工具。您可以在NativeScript文檔中找到關於它的更多信息 - debugging。 基本上使用調試器,你將需要Chrome瀏覽器。有幾個選項來運行它:

  1. 當你沒有運行的應用程序 - 你將不得不使用tns debug android --debug-brk,它將運行應用程序並打開調試
  2. 如果您已經運行應用程序與tns run androidtns livesync android --watch(下面有關於此命令的更多信息),您將無法在當前控制檯窗口中編寫任何其他命令。在這種情況下,您可以打開一個控制檯窗口,然後鍵入tns debug android --start
  3. 如果您希望能夠在當前控制檯中鍵入其他命令,則可以使用tns run android --justlaunch,之後您將能夠鍵入相同的控制檯窗口tns debug android --start

如果你想擁有全部印在一個地方,你console.log()語句中,你可以使用Android設備監控。運行它會在您的控制檯中寫入monitor,並且它會出現。在那裏你可以爲你的console.log() - s創建一個新的過濾器。在按下綠色加號圖標後出現的對話框中,在日誌標記的字段中,您必須編寫JS。然後在運行應用程序之後,您可以按下名稱,然後輸入該篩選器,然後您會看到您的應用程序中的所有console.log()語句。 使用顯示器會更方便些,就是使用命令tns livesync android --watch。通過使用它,您可以在保存所做更改後自動運行應用程序。請記住,有時顯示器會斷開連接,您將不得不再次運行它。

+0

@Neil Chakarova感謝'monitor'確實有幫助,但是當我停止運行'tns run android'時,它不會再次追上設備。另外在我運行'tns run android'後,我的tns調試android --start' dosent工作,只是掛了很長時間,然後結束它說**無法檢測調試端口。**任何想法爲什麼? – guleria

+0

@Neil Chakarova'tns調試android --get-port'總是返回0,儘管我已經完成了所有步驟。我有**鉻**作爲我的瀏覽器可以這樣的問題? – guleria

+0

@guleria你可能對鉻瀏覽器是正確的,但它不會清楚,直到我看到'tns debug android --start --log trace'命令的輸出是什麼。另外,最好在https://github.com/NativeScript/nativescript-cli/issues發佈問題,這樣團隊的可見度會更高。 –