我在angular中匯入了crypto pouch,如下所示
從'crypto-pouch'匯入CryptoPouch。
但它顯示的錯誤如下,
找不到'crypto-pouch'模塊的宣告檔案。'/home/excercise_task/pouchDB/pouchApp/node_modules/crypto-pouch/index.js'隱含有'any'型別。
試著npm i --save-dev @types/crypto-pouch如果它存在,或者添加一個新的宣告(.d.ts)檔案,包含declare module 'crypto-pouch';ts(7016)
uj5u.com熱心網友回復:
將匯入陳述句改為require:
const CryptoPouch = require('crypto-pouch');
如果你得到找不到名字require像下面的資訊:
找不到名稱'require'。你是否需要為節點安裝型別定義 的型別定義嗎?
運行:
npm i -save-dev @types/node
uj5u.com熱心網友回復:
關于我對OP的評論,由于crypto-pouch只有兩種方法,而我從來沒有寫過pouchy插件宣告,這里是這樣。 只要復制這個內容并放在你的專案中,例如:srccrypto-pouch.d.ts對于一個angular專案。 Intellisense應該會接收到這個內容,并且ts(7016)應該會消失。
//extend PouchDB for the crypto-pouch plugin
declare module "crypto-pouch"; //為此定義了模塊。
declare namespace PouchDB {
namespace CryptoPouch {
type Options = {
/* 一個字串密碼,用于加密檔案。*/
password: 字串。
/* (可選)不會被加密的屬性的字串陣列。*/
ignore? Array<string> 。
};
}
/* 插件 */
interface Database<Content extends {} = {}> {
/**。
*
* @param options See CryptoPouch.Options
*/
crypto(options: CryptoPouch.Options)。) Promise<void> 。
/**。
*
* @param password 一個字串密碼,用于加密檔案。
* @param ignore 將不被加密的屬性字串陣列。
*/
crypto(password: string, ignore? Array<string>)。) Promise<void>。
/**。
* 禁用資料庫的加密功能,并忘記密碼。
*/
removeCrypto()。void;
}
}
如果我有時間,我將在專案的github repo創建一個PR。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/332371.html
標籤:
上一篇:如何知道連鎖的django生命周期鉤子/信號何時完成運行?
下一篇:存盤和訪問資料框架物件
