filters

2019-02-20 15:51 更新

通過配置filters屬性,用戶可以過濾掉一些不需要捕獲的錯(cuò)誤,比如Script error.

filters只能在JavasScript中配置:

if ("fundebug" in window) {
    fundebug.filters = [
    {
        message: /^Script error\.$/
    }]
}

配置規(guī)則

filters屬性有以下特點(diǎn):

  • 它是一個(gè)數(shù)組,數(shù)組中的元素為過濾規(guī)則,當(dāng)錯(cuò)誤符合數(shù)組中任意一條過濾規(guī)則時(shí),則會(huì)被過濾
  • 過濾規(guī)則是JavaScript對(duì)象,該對(duì)象的Key為錯(cuò)誤的屬性名,Value為正則表達(dá)式(唯一的特例是"inexistence");
  • 當(dāng)錯(cuò)誤的屬性匹配對(duì)應(yīng)正則表達(dá)式時(shí),則會(huì)被過濾;
  • 當(dāng)過濾規(guī)則的屬性值為"inexistence"時(shí),則會(huì)過濾某個(gè)屬性不存在的錯(cuò)誤;

示例

示例1:過濾name為ReferenceError的錯(cuò)誤

fundebug.filters = [
{
    name: /^ReferenceError$/
}]

示例2:過濾name為ReferenceError,且message中含aler的錯(cuò)誤

fundebug.filters = [
{
    name: /^ReferenceError$/,
    message: /aler/
}]

示例3:過濾method為GET,且status為401的錯(cuò)誤

fundebug.filters = [
{
    req:
    {
        method: /^GET$/
    },
    res:
    {
        status: /^401$/
    }
}]

示例4:過濾特定域名的資源加載錯(cuò)誤

fundebug.filters = [
{
    target:
    {
        src: /example.com/
    }
}]

示例5:過濾status不存在的圖片加載錯(cuò)誤

fundebug.filters = [
{
    target:
    {
        tagName: /^IMG$/,
        status: "inexistence"
    }
}]

示例6:配置多條過濾規(guī)則

fundebug.filters = [
{
    message: /^Script error\.$/
},
{
    req:
    {
        method: /^GET$/
    },
    res:
    {
        status: /^401$/
    }
}]

不同類型的錯(cuò)誤的屬性略有不同,具體可以查看JavaScript執(zhí)行錯(cuò)誤、資源加載錯(cuò)誤以及HTTP請(qǐng)求錯(cuò)誤

常見錯(cuò)誤過濾

Script error.

fundebug.filters = [
{
    message: /^Script error\.$/
}]

WeixinJSBridge is not defined

fundebug.filters = [
    {
        message: /WeixinJSBridge is not defined/
    }
];


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)