簡體   English   中英

如何禁用:[js] 文件是 CommonJS 模塊; 它可以轉換為 ES6 模塊

[英]How do I disable: [js] File is a CommonJS module; it may be converted to an ES6 module

以下是我要禁用的內容:

[js] 文件是一個 CommonJS 模塊;它可以轉換為 ES6 模塊。

我在設置里找不到。
幫助表示贊賞,因為這真的很煩人。

這是 Visual Studio Code 中添加的一項新功能,稱為“建議代碼操作”。 “建議代碼操作”在 JavaScript 和 TypeScript 中默認啟用。

您可以通過在您的用戶/工作區設置中設置: "typescript.suggestionActions.enabled": false"javascript.suggestionActions.enabled": false來禁用它們。 文檔可以在這里找到。

(圖片由Yusuf Yaşar提供。)

對於使用帶有coc.nvim 的Vim 的任何人,您可以通過在:CocConfig對象中添加相同的內容來進行相同的更改:

"javascript.suggestionActions.enabled": false

如果您之前沒有向:CocConfig添加任何設置,那么您需要確保將上述設置包裝在一個 JSON 對象中:

{
    "javascript.suggestionActions.enabled": false
}

實際上,這個煩人的建議來自 TypeScript。

因此,要關閉此建議,您可以修改 TypeScript 的源代碼,編譯它,然后告訴 vscode 使用您的 TypeScript 分支。

作為一個快速而骯臟的黑客,只需刪除與ts.Diagnostics.File_is_a_CommonJS_module_it_may_be_converted_to_an_ES6_module相關的邏輯,然后按照 TypeScript 的 README 中的說明編譯項目。

編譯將失敗,因為刪除相關邏輯會導致一些函數變得不使用,然后您只需刪除那些未使用的函數定義並重新編譯項目( gulp clean && gulp local )。

成功編譯 TypeScript 的 fork 后,將用戶 settings.json 更改為指向您的 vscode fork:

"typescript.tsdk": "/path/to/your/fork/of/TypeScript/built/local",

完畢。

重新啟動你的 vscode,煩人的建議就消失了。

您可以檢查此提交以查看需要修改哪些 TypeScript 源文件。

警告:修改既快速又臟,使用它們的風險自負。 如果你發現任何錯誤,你可以刪除 tsdk 配置,切換回 vscode 的內置 TypeScript。

警報! 對於喜歡智能編碼幫助的 VSCode 用戶來說,這種方法可能太過分了。 將它與其他 linting 和測試實用程序一起用作簡單快速的幫助。


所述消息存在的控制位於Settings => Extensions => TypeScript (打字稿!!!:P)

如屏幕截圖所示,我在“設置”中使用關鍵字“驗證”進行搜索,然后單擊 TypeScript。 這是第一項。

在此處輸入圖片說明

將.vscode文件添加到項目文件路徑。 將settings.json文件插入.vscode文件。

在此處輸入圖片說明

對於使用帶有 Native LSP 和nvim-lspconfig來設置語言服務器的任何人,您可以通過在 tsserver 設置中的某處添加以下內容來禁用建議:

require('lspconfig').tsserver.setup {
    init_options = {
        preferences = {
            disableSuggestions = true
        }
    }
}

如果您在 Next js 中遇到此錯誤,請嘗試以下代碼。 1- Next.js 包含“next/babel”預設到您的應用程序,其中包括編譯 React 應用程序和服務器端代碼所需的一切。 2- 打開你的 .eslintrc.json

{ "extends" : "next/babel" }

3-但是如果你想擴展默認的 Babel 配置,它也是可能的。 https://nextjs.org/docs/advanced-features/customizing-babel-config

如果你的項目是"type": "module"並且你需要在其中有一個 CommonJS 文件,例如配置 ESLint(在撰寫本文時它不支持 ESM),那么只需將其從*.js重命名為 *.js 即可*.cjs (或從*.ts*.cts ,如果合適的話),並且建議將 go 消失。 大約一年前,此修復程序與 TypeScript 4.5.1 一起提供

也許你沒有“功能(請求,響應)”試試看,它對我有用

暫無
暫無

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

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