jquery-param npm 包具有我在 Angular9 項目中需要的功能。我注意到它沒有打字稿的類型,所以我還添加了@types/jquery-param作為依賴項。我嘗試以不同的方式導(dǎo)入無濟于事。我還閱讀了有關(guān)definitelyTyped 和typings 的各種答案,但無法找到解決方案。如果有人愿意看一下,請按預(yù)期用途制作StackBlitz 。更新:TL;DR:我設(shè)法導(dǎo)入并使用它?,F(xiàn)在項目編譯并且運行良好,但是 VSCode 的檢查器在 import 語句中標記了一個錯誤。關(guān)閉并重新打開 VSCode 后,它不再顯示導(dǎo)入錯誤。似乎它只在應(yīng)用啟動時加載對tsconfig.json的更改。在StackBlitz中,只需鍵入和導(dǎo)入import param from 'jquery-param';.繼續(xù)在我的真實項目中安裝這兩個軟件包。然后由于編譯器抱怨導(dǎo)入時遇到問題:src/app/shared/services/http.service.ts:4:24 中的錯誤 - 錯誤 TS2497:此模塊只能通過打開“allowSyntheticDefaultImports”標志并引用其默認導(dǎo)出來引用 ECMAScript 導(dǎo)入/導(dǎo)出。這是因為類型是如何導(dǎo)出的,正如@wtho 提到的那樣,如下所述:index.d.ts(8, 1):此模塊使用 'export =' 聲明,并且只能在使用 'allowSyntheticDefaultImports' 標志時與默認導(dǎo)入一起使用。嘗試import * as params from 'jquery-params'使用大括號和其他方式導(dǎo)入,但沒有成功。所以我加了 "esModuleInterop": true,
"allowSyntheticDefaultImports": true,到tsconfig.json作為提到的一些答案?,F(xiàn)在項目編譯并且運行良好。關(guān)于jquery-param 的注意事項:此包導(dǎo)出一個與jQuery.param()等效的單一函數(shù)。這允許對嵌套對象進行編碼,以在 GET 請求中將其作為查詢字符串傳遞。我將在對這樣的 API 的請求中使用它:
如何在 Angular 中使用“jquery-param”npm 包?
茅侃侃
2022-10-27 16:13:28