百度智能小程序 Jslint

2020-09-05 15:15 更新

Jslint

此功能在 3.9.0 之后版本可用,默認(rèn)為開啟(可關(guān)閉,看下方具體使用)。

為了讓開發(fā)者在開發(fā)時(shí)可以更早的發(fā)現(xiàn)可能存在的代碼邏輯問題以及影響運(yùn)行時(shí)性能的代碼,開發(fā)者工具在 3.9.0 支持了全文件級的代碼靜態(tài)掃描。

功能簡述

我們使用了eslint來對 js 代碼進(jìn)行靜態(tài)分析。

我們更改了eslint查找規(guī)則配置文件的邏輯,小程序開發(fā)目錄中 eslint 相關(guān)配置文件不生效,只有工具內(nèi)置的規(guī)則生效。

工具內(nèi)置的eslint的規(guī)則除了一些校驗(yàn)代碼風(fēng)格的規(guī)則外,與它推薦開啟的規(guī)則基本一致(eslint 規(guī)則文檔)。

工具內(nèi)置具體規(guī)則如下:

eslint.config

{
    "rules":{
        "no-await-in-loop":1,
        "for-direction":1,
        "getter-return":1,
        "no-async-promise-executor":1,
        "no-compare-neg-zero":1,
        "no-cond-assign":1,
        "no-constant-condition":1,
        "no-control-regex":1,
        "no-debugger":1,
        "no-dupe-args":1,
        "no-dupe-keys":1,
        "no-duplicate-case":1,
        "no-empty":1,
        "no-empty-character-class":1,
        "no-ex-assign":1,
        "no-extra-boolean-cast":1,
        "no-func-assign":1,
        "no-inner-declarations":1,
        "no-invalid-regexp":1,
        "no-misleading-character-class":1,
        "no-regex-spaces":1,
        "no-sparse-arrays":1,
        "no-unexpected-multiline":1,
        "no-unreachable":1,
        "no-unsafe-finally":1,
        "no-unsafe-negation":1,
        "require-atomic-updates":1,
        "use-isnan":1,
        "no-case-declarations":1,
        "no-empty-pattern":1,
        "no-fallthrough":1,
        "no-global-assign":1,
        "no-octal":1,
        "no-redeclare":1,
        "no-obj-calls":1,
        "valid-typeof":1,
        "no-self-assign":1,
        "no-unused-labels":1,
        "no-useless-escape":1,
        "no-with":1,
        "no-delete-var":1,
        "no-shadow-restricted-names":1,
        "no-undef":1,
        "no-unused-vars":1,
        "no-class-assign":1,
        "no-const-assign":1,
        "no-dupe-class-members":1,
        "no-new-symbol":1
    }
}

具體使用

關(guān)閉 jsLint 能力

該功能可在項(xiàng)目信息 => 本地配置 => 靜態(tài)代碼檢查中開啟關(guān)閉(默認(rèn)為開啟)。 open-eslint

查看 lint 日志

在調(diào)試器中選擇Console面板,點(diǎn)擊代碼靜態(tài)掃描。 open-eslint

忽略某些目錄或文件

若使用第三方代碼庫或一些編譯之后的代碼,可以在 project.swan.json 文件中配置需要忽略的目錄或文件。 open-eslint

相關(guān)調(diào)試操作

點(diǎn)擊下圖藍(lán)框部分,編輯器可跳轉(zhuǎn)至具體問題代碼處;點(diǎn)擊紅框部分,可選擇查看 eslint 日志的具體文件。 eslint-operation


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

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號