1. 程式人生 > >瀏覽器除錯動態js指令碼的方法

瀏覽器除錯動態js指令碼的方法

前兩天拉取公司前端程式碼修改,發現在開發者工具的sources選項裡邊,居然沒有列出來我要除錯的js指令碼,後來觀察了一下,指令碼是動態在頁面裡引入的,可能是因為這樣所以不顯示出來,但是如果不能斷點除錯,只靠列印日誌真要把人累死了,效率太低,其實有兩種方法可以解決。

1、在腳本里邊增加//# sourceURL=xxxxxxxxx.js,名稱自己命名,可以直接使用檔名,如下圖:
other.html:

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>
動畫</title> <script src="https://cdn.bootcss.com/vue/2.5.16/vue.min.js"></script> <link rel="stylesheet" type="text/css" href="https://cdn.bootcss.com/animate.css/3.5.2/animate.min.css" rel="external nofollow" /> <script src="./demo1.js"></script> <script src="./demo2.js"></script
>
</head> <body> <div id="box"> <!-- 控制資料的值切換顯示隱藏 --> <button @click="show=!show">transition</button> <transition name="" mode="" enter-active-class="zoomInLeft" leave-active-class="zoomOutRight"> <p v-show="show"
class="animated">
第一種方法</p> </transition> <transition name="" mode="" enter-active-class="animated zoomInLeft" leave-active-class="animated zoomOutRight"> <p v-show="show">第二種方法</p> </transition> <!-- 多元素運動 --> <transition-group tag="" name="" enter-active-class="zoomInLeft" leave-active-class="zoomOutRight"> <p v-show="show" class="animated" :key="1">第一個元素</p> <p v-show="show" class="animated" :key="2">第二個元素</p> </transition-group> </div> <script> window.onload = function(){ var app = new Vue({ el:'#box', data:{ show:false } }) } </script> </body> </html>

demo1.js

// 加上下邊這句話,就可以讓在開發者工具裡顯示不出來的靜態載入程式碼顯示出來,並且可以斷點除錯。
//# sourceURL=demo1.js
document.writeln('demo1.js')

demo2.js

//# sourceURL=demo2.js
document.writeln('demo2.js')

這裡寫圖片描述

然後在網頁裡開啟包含這個js的頁面,這樣就在開發者工具裡能夠看到了, 可以像普通js一樣正常打斷點並進行除錯。

2、第二種方法是利用console.log(“讓我除錯吧!”)列印日誌,在瀏覽器console裡看到輸出資訊後,
這裡寫圖片描述

點選後面的連結,即跳入動態指令碼。
這裡寫圖片描述