簡體   English   中英

創建可手動觸發的 Eslint 規則

[英]Create manually triggerable Eslint rule

在我從事的項目中,我想添加一個注釋,這將使 linter 檢測錯誤並使構建失敗。

一個用例是有時我用模擬端點替換真實端點,例如:

axios.get(MOCK_URL)
  .then(function (response) {

如果我可以像這樣在此處添加 Eslint 評論以使構建失敗,那將很有用,因此模擬 URL 不會被部署:

axios.get(MOCK_URL) // Eslint: fail
  .then(function (response) {

我想你問錯問題了:)

模擬應該在測試中使用,而不是在生產代碼中,因此“根據定義”這種情況永遠不會發生,除非您通過僅出於測試原因修改一些代碼來手動測試您的生產代碼,然后將其修改回來。

如果這就是你正在做的事情,我鼓勵你停止這樣做:它很容易出錯,而且是重復自己的平凡任務。 改為編寫適當的測試,這些測試可以在任何提交時使用pre-commit hook自動運行。

至於用模擬端點替換真實端點,您可以使用諸如sinon之類的庫在您的測試中動態地完成它!

更新(閱讀您的評論后):

聽起來您需要的是不同的環境:您在 prod 中進行測試,而不是擁有開發/登台環境。

如果/一旦您確實有多個環境,您可以根據其部署的環境設置應用程序的行為,而不是:

axios.get(MOCK_URL).then(function (response)...

您可以執行以下操作:

axios.get(config.url.env).then(function (response)

並將您的配置設置為在每個環境中保存 url,例如

... url: {
      staging: mock_url,
      production: url, 
    }
 ...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM